Список контактов
Адресная книга рабочего пространства: сначала те, кого видели последними, а контакты, которым никогда не писали, — в конце. Все ключи рабочего пространства читают одни и те же записи, поэтому контакт, сохранённый одним участником, виден каждому участнику и каждому ключу. Постраничный вывод keyset: `limit` доходит до 200, по умолчанию 50, а `nextCursor` возвращается обратно как `cursor`, пока `hasMore` равен true.
Выполняет настоящий запрос в вашем рабочем пространстве, с вашим собственным ключом.
GET /contacts
Адресная книга рабочего пространства: сначала те, кого видели последними, а контакты, которым никогда не писали, — в конце. Все ключи рабочего пространства читают одни и те же записи, поэтому контакт, сохранённый одним участником, виден каждому участнику и каждому ключу. Постраничный вывод keyset: limit доходит до 200, по умолчанию 50, а nextCursor возвращается обратно как cursor, пока hasMore равен true.
Пример
Требуется contacts:read.
curl "$OE/contacts?limit=50" -H "$AUTH"{ "object": "list", "data": [ { "object": "contact", "email": "[email protected]", "name": "Ada Lovelace", "source": "auto", "notes": null, "lastSeenAt": "2026-08-29T08:19:08.000Z", "createdAt": "2026-08-01T10:00:00.000Z", "updatedAt": "2026-08-29T08:19:08.000Z" } ], "hasMore": false, "nextCursor": null}source равен manual, когда адрес кто-то сохранил — в приложении или через POST /contacts, — и auto, когда он записался из-за того, что участник отправил на него письмо из редактора. Это существенно разные утверждения (auto — свидетельство переписки, manual — свидетельство намерения), и на них стоит ветвиться.
Порядок: lastSeenAt по убыванию, null в конце, затем от новых к старым. У только что созданного контакта lastSeenAt нет, и он оказывается в конце, а не наверху.
Книга принадлежит рабочему пространству, а не тому, кто сохранил запись. Письмо, пришедшее с адреса, ничего не создаёт.