Перейти к документации
SDK

Ярлыки

`labels.list`, `get`, `create`, `update` и `delete`.

Все методы

usage.ts
const labels = await openemail.labels.list()const label = await openemail.labels.get('USER_INVOICES') const created = await openemail.labels.create({  name: 'Invoices',  color: { backgroundColor: '#e8eaed', textColor: '#3c4043' },}) await openemail.labels.update(created.id!, { name: 'Invoices 2027' })await openemail.labels.delete(created.id!)

list разрешается обычным массивом, поскольку ярлыки не разбиваются на страницы. color при чтении возвращается, а не отбрасывается, чтобы клиент мог отрисовать ярлык так, как его видит пользователь. type всегда user, так что ветвиться не на чем. Идентификаторы выводятся из имени, поэтому Invoices — это USER_INVOICES.

Параметры: labels.create и labels.update

namestringобязательно
Отображаемое имя ярлыка; перед измерением обрезаются пробелы, поэтому ограничение — от 1 до 225 символов после обрезки. Одни пробелы дают 422, а не безымянную строку с цветной точкой, которую нечего прочитать и не на что нажать. Кроме того, `create` отказывает, когда в почтовом ящике уже 50 пользовательских ярлыков: 422 `label_limit_reached` с указанием `name`.
colorLabelColor
Необязательно в обоих вызовах, и если опустить его в `update`, сохранённый цвет останется прежним, а не будет очищен. Тело строгое, поэтому похожий, но неверный ключ вроде `colour` даёт 422, а не молчаливое бездействие.
color.backgroundColorstringобязательно
Обязательно, если задан `color`, и не длиннее 32 символов. В собственном почтовом ящике сохраняется только эта половина: строка хранит один цвет.
color.textColorstringобязательно
Обязательно, если задан `color`, и не длиннее 32 символов.

Ответ: Label

object'label'
Всегда строка `label`. Запись тоже её возвращает — в `SavedLabelResource`, а не в этом типе.
idstring
Собственный идентификатор почтового ящика; именно его принимают `get`, `update` и `delete`. При записи он приходит как `SavedLabelResource.id`, который может быть null. Если он null, найдите ярлык через список.
namestring
То, что видит пользователь; пустая строка, а не null, если почтовый ящик вернул ярлык без имени. В собственном почтовом ящике идентификатор выводится из этого имени (`Follow up` становится `USER_FOLLOW_UP`), поэтому второй ярлык, который нормализуется в тот же идентификатор, отклоняется с 409 `label_name_taken`, а не затирает первый.
typestring
Всегда `user`. Здесь отдаются только пользовательские ярлыки: идентификаторы стандартных папок отфильтровываются до сборки ответа, а системный идентификатор в `get` даёт 404. Маршрут подставляет `user`, когда почтовый ящик опускает это поле, и ничто в `LabelInput` его не задаёт.
colorLabelColor | null
Null, когда почтовый ящик не сообщает цвета для ярлыка. Перед отрисовкой проверяйте строки, а не объект. Пустая пара — не то же самое, что отсутствующая.
color.backgroundColorstring
Фон ярлыка в том виде, в каком его хранит почтовый ящик. Возвращается, а не отбрасывается, чтобы клиент мог отрисовать ярлык так, как пользователь видит его в приложении.
color.textColorstring
Цвет текста. В собственном почтовом ящике для него нет колонки: при чтении возвращается `#ffffff`, что бы ни было записано, поэтому светлый фон приходит с нечитаемым текстом на нём.