Listar pessoas
Todos os que a página de Contactos da app lista: os contactos guardados e cada endereço visto no correio como remetente ou destinatário da mensagem mais recente de uma conversa, com quantas conversas cada um partilha com a caixa e quando se mexeu o último correio. Uma pessoa vista no correio e guardada é uma só linha. A paginação é por chave: `limit` vai até 100 e vale 25 por omissão, e `nextCursor` volta como `cursor` enquanto `hasMore` for true.
Executa a chamada real contra o seu espaço de trabalho, com a sua própria chave.
GET /contacts/people
Todos os que a página de Contactos da app lista: os contactos guardados e cada endereço visto no correio como remetente ou destinatário da mensagem mais recente de uma conversa, com quantas conversas cada um partilha com a caixa e quando se mexeu o último correio. Uma pessoa vista no correio e guardada é uma só linha. A paginação é por chave: limit vai até 100 e vale 25 por omissão, e nextCursor volta como cursor enquanto hasMore for true.
Exemplo
Requer contacts:read. Os endereços vistos no correio só são incluídos quando a chave também tem threads:read.
curl "$OE/contacts/people?sort=threads&limit=25" -H "$AUTH"{ "object": "list", "data": [ { "object": "person", "email": "[email protected]", "displayEmail": "[email protected]", "name": "Ada Lovelace", "saved": true, "source": "manual", "notes": "Met at the engine demo", "photoUrl": null, "threads": 42, "lastAt": "2026-09-22T16:04:11.000Z", "createdAt": "2026-08-01T10:00:00.000Z", "updatedAt": "2026-09-01T09:12:00.000Z", "blockedBy": null }, { "object": "person", "email": "[email protected]", "displayEmail": "[email protected]", "name": "Shop", "saved": false, "source": null, "notes": null, "photoUrl": null, "threads": 17, "lastAt": "2026-09-21T07:30:00.000Z", "createdAt": null, "updatedAt": null, "blockedBy": { "rule": "shop.example", "list": "blockedDomains" } } ], "hasMore": true, "nextCursor": "WyIyMDI2LTA5LTIxVDA3OjMwOjAwLjAwMFoiLDE3XQ", "seen": true}sort é recent (por omissão), o correio mais recente primeiro e os contactos guardados nunca vistos no correio depois, name, por nome ou, na falta dele, por endereço e sem distinguir maiúsculas, ou threads, os que têm mais conversas primeiro. Os empates desfazem-se pelo endereço, por isso um percurso nunca repete nem salta uma linha.
q pesquisa nomes, endereços e notas. email lê um só endereço, que é como se obtém o número de conversas e o último correio de uma pessoa. blocked=true devolve só as pessoas que a lista de bloqueio do espaço de trabalho bloqueia, incluindo regras de domínio inteiro, e blockedBy indica a regra em cada linha.
Sem threads:read, as linhas são só os contactos guardados e seen é false, porque o resto é lido do correio. Os endereços eliminados e os próprios endereços da caixa nunca são listados. O cursor é opaco: devolva-o com os mesmos sort, q e blocked, e um que não tenha sido entregue é um 400 invalid_cursor.