ドキュメント本文へスキップ
Python

ラベル

`labels.list`、`list_all`、`iterate`、`list_colors`、`get`、`create`、`update`、`delete`。

すべてのメソッド

usage.py
from openemail import openemail page = openemail.labels.list(limit=50)every = openemail.labels.list_all()colors = openemail.labels.list_colors() created = openemail.labels.create({    'name': 'Invoices',    'color': {'backgroundColor': 'gradient:sunset'},}) openemail.labels.update(created['id'], {'name': 'Invoices 2027'})openemail.labels.update(created['id'], {'color': {'backgroundColor': '#3B82F6'}})openemail.labels.delete(created['id'])

list は名前順に並んだラベルの Page を 1 つ返し、list_all と iterate はすべてのページをたどる。各ラベルには色、threadCount、作成日時と最終変更日時が付く。list_colors はアプリが提供するパレット(単色 14 色とグラデーション 7 種)を普通のリストで返す。type は常に user である。ID はラベルを作成したときの名前から作られるので、Invoices は USER_INVOICES になり、決して変わらない。

ラベルはワークスペースに属するので、名前の変更、色の変更、削除はすべてのメンバーとすべてのキーに反映される。threads.update は会話にラベルを付け外しし、threads.list(folder='USER_INVOICES') はそのラベルが付いたすべての会話を一覧する。

パラメーター: labels.create と labels.update

namestr
ラベルの表示名。長さを測る前に前後の空白が取り除かれるため、上限は取り除いた後で 1 〜 225 文字である。`create` では必須、`update` では任意で、省けば名前はそのまま残る。空白だけなら 422 になる。大文字と小文字を区別せずに比べて別のラベルがすでに持つ名前は 409 `label_name_taken` になり、ワークスペースのラベルが 50 個に達すると `create` は 422 `label_limit_reached` で拒否する。
colorLabelColorInput | None
どちらの呼び出しでも省略可能。`update` で省けば保存済みの色が残り、`None` で消える。ボディは厳格に検証されるため、`colour` のような惜しいキーは黙って無視されるのではなく 422 になる。
color.backgroundColorstr必須
hex カラー(`#RGB`、`#RGBA`、`#RRGGBB`、`#RRGGBBAA` のいずれかで、大文字で保存される)か、グラデーショントークン(`gradient:sunset`、`gradient:ember`、`gradient:meadow`、`gradient:lagoon`、`gradient:aurora`、`gradient:berry`、`gradient:midnight` のいずれか)。空文字列は色なしを意味し、それ以外は 422 `invalid_parameter` になる。
color.textColorstr
受け付けるが無視される。文字色はアプリと同じ方法で `backgroundColor` から算出される。

レスポンス: LabelResource

objectLiteral['label']
常に文字列 `label`。`create` と `update` も、保存されたとおりに読み直したこの同じ型を返す。
idstr
ラベルの ID で、`get`、`update`、`delete`、`threads.update` が受け取るもの。名前を変えても決して変わらない。
namestr
ユーザーに見える名前。
typestr
常に `user`。システムラベルはここでは決して返されず、`get` にシステム ID を渡すと 404 になる。
colorLabelColor | None
ラベルに色がないときは `None`。
color.backgroundColorstr
保存されている色。hex 値かグラデーショントークン。グラデーションの両端は `list_colors` でわかる。
color.textColorstr
アプリがその色の上に描く文字色で、`#18181B` か `#FFFFFF`。保存されずサーバーで算出される。
threadCountint
現在そのラベルが付いている会話の数。特定のアドレスに限定されたキーでは、そのアドレスに配信された会話だけが数えられる。
createdAtstr | None
ラベルを作成した日時(ISO 8601)。これらの日時が記録されるようになる前に作られたラベルでは `None`。
updatedAtstr | None
最後に名前か色を変えた日時(ISO 8601)。これらの日時が記録されるようになる前に作られたラベルでは `None`。

レスポンス: LabelColorResource

kindLiteral['solid', 'gradient']
色見本が単色かグラデーションか。
namestr
色見本の名前。`red` や `sunset` など。
valuestr
この色見本を使うために `color.backgroundColor` として送る値。
solidstr
グラデーションを描けない場所のための単一の hex。単色では `value` と同じ。
fromstr | None
グラデーションの始まり。135 度で描かれる。単色では `None`。
tostr | None
グラデーションの終わり。単色では `None`。
textColorstr
アプリがこの色見本の上に描く文字色。

リファレンス