Saltar para a documentação
API

Definir a foto de um contacto

Carrega a foto mostrada para um contacto, substituindo a que houvesse. O corpo é a própria imagem, não JSON, com o tipo em `Content-Type`: `image/png`, `image/jpeg`, `image/webp` ou `image/gif`, até 5 MB. É ajustada a um quadrado de 512 píxeis e guardada como WebP, e de uma imagem animada fica a primeira moldura.

PUTapi.openemail.uk/contacts/{email}/photo

Executa a chamada real contra o seu espaço de trabalho, com a sua própria chave.

PUT /contacts/{email}/photo

Carrega a foto mostrada para um contacto, substituindo a que houvesse. O corpo é a própria imagem, não JSON, com o tipo em Content-Type: image/png, image/jpeg, image/webp ou image/gif, até 5 MB. É ajustada a um quadrado de 512 píxeis e guardada como WebP, e de uma imagem animada fica a primeira moldura.

Exemplo

Requer contacts:write. O endereço tem de ser um contacto guardado, por isso guarde-o primeiro com PUT /contacts/{email}.

curl
curl -X PUT "$OE/contacts/grace%40example.com/photo" -H "$AUTH" -H 'content-type: image/jpeg' --data-binary @grace.jpg
Resposta
{  "object": "contact",  "email": "[email protected]",  "name": "Grace Hopper",  "source": "manual",  "notes": null,  "photoUrl": "https://cdn-prod.openemail.uk/contacts/photos/5b0e2c7a-91d4-4f3e-8a26-c4f1d9e07b3a.webp",  "lastSeenAt": null,  "createdAt": "2026-09-18T09:00:00.000Z",  "updatedAt": "2026-09-23T10:20:00.000Z",  "audiences": [    { "id": "aud_9f2c4b7e1a0d63d84c5f2e7b", "name": "All contacts", "builtin": "default" }  ]}

Um endereço que não é um contacto guardado é um 404 contact_not_found. Um corpo que não é uma imagem de um tipo aceite, tem mais de 5 MB ou não pode ser lido é um 422 invalid_image.

Um serviço de imagens sobrecarregado responde 503 image_busy, que se pode repetir sem risco. Cada carregamento recebe uma photoUrl nova, por isso uma foto antiga em cache nunca aparece no lugar da nova.