Python
التسميات
`labels.list` و`list_all` و`iterate` و`list_colors` و`get` و`create` و`update` و`delete`.
كل الدوالّ
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 واحدة من التسميات مرتّبة حسب الاسم، ويمرّ list_all وiterate على كل الصفحات. وتحمل كل تسمية لونها وthreadCount ووقت إنشائها وآخر تغيير لها. ويعيد list_colors لوحة الألوان التي يقدّمها التطبيق، أربعة عشر لونًا مصمتًا وسبعة تدرّجات، قائمةً بسيطة. وtype دائمًا user. والمعرّف مأخوذ من الاسم الذي أُنشئت به التسمية، فـInvoices هو USER_INVOICES، ولا يتغيّر أبدًا.
التصنيف يخصّ مساحة العمل، فإعادة تسميته أو تغيير لونه أو حذفه يغيّره لكل عضو وكل مفتاح. ويضع threads.update التصنيفات على محادثة ويزيلها، ويسرد threads.list(folder='USER_INVOICES') كل محادثة تحمل تصنيفًا.
المعاملات: labels.create و labels.update
namestr- الاسم المعروض للتصنيف، يُقَصّ قبل قياسه، فالحدّ من 1 إلى 225 حرفًا بعد القص. مطلوب في `create` واختياري في `update`، حيث يُبقي إغفاله الاسم. والمسافات وحدها تعطي 422. والاسم الذي يحمله تصنيف آخر، مع مقارنة لا تفرّق بين حالة الأحرف، يعطي 409 `label_name_taken`، ويرفض `create` حين تضم مساحة العمل 50 تصنيفًا، برمز 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- معرّف التصنيف، وهو ما تأخذه `get` و`update` و`delete` و`threads.update`. لا يتغيّر أبدًا، حتى بعد إعادة التسمية.
namestr- ما يراه المستخدم.
typestr- دائمًا `user`. لا تُقدَّم تصنيفات النظام هنا أبدًا، ومعرّف نظام في `get` يعطي 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- الحبر الذي يرسمه التطبيق على هذا المربّع.