Désabonner un contact

POST /api/v1/contacts/{contactId}/unsubscribe Désabonne le contact. Idempotent : l'appeler sur un contact déjà désabonné ne change rien et répond quand même 200.
bash
curl -X POST -H "x-api-key: $AGENTMAIL_API_KEY" \
  "https://www.agentsmail.io/api/v1/contacts/$CONTACT_ID/unsubscribe"

Autorisation

Rôle dans l'organisationCet endpoint
OWNERAutorisé
ADMINAutorisé
MEMBERRefusé — 403
Une clé porte le rôle que son créateur détient dans cette organisation — jamais un rôle sur AgentsMail lui-même. Voir Clés d'API.

Paramètres de chemin

ParamètreTypeDescription
contactIdstringObligatoire. Le contact qui a demandé à arrêter

Exemple

bash
curl -X POST -H "x-api-key: $AGENTMAIL_API_KEY" \
  "https://www.agentsmail.io/api/v1/contacts/$CONTACT_ID/unsubscribe"

Réponse

  • 200 OK — l'appel a réussi.
  • 401 Unauthorized — clé absente ou invalide, ou son propriétaire a quitté l'organisation.
  • 403 Forbidden — le propriétaire de la clé est member de l'organisation, pas admin.
  • 404 Not Found — ressource inexistante, ou elle appartient à une autre organisation. L'API ne confirme jamais qu'un identifiant existe à un appelant qui n'y a pas droit.
  • 429 Too Many Requests — plus de 120 requêtes en une minute pour cette clé.

Champs de la réponse

Le contact, désormais unsubscribed. Idempotent : l'appeler deux fois ne change rien.
ChampTypeDescription
successbooleanIndique si l'opération a réussi
data.idstringIdentifiant du contact
data.emailstringSon adresse — unique au sein de sa liste
data.firstName / lastNamestring \null
data.statusstringpending, subscribed, unsubscribed, bounced, complained
data.listIdstringLa liste à laquelle il appartient — un contact appartient à une seule liste
data.listobject{id, name} de cette liste
data.tagsarray{id, name} de chaque tag porté
data.createdAt / updatedAtstringDates ISO

Exemple de réponse

json
{
  "success": true,
  "data": {
    "id": "4d19c0a2",
    "email": "ada@example.com",
    "firstName` / `lastName": "value",
    "status": "subscribed",
    "listId": "0b7c51e8",
    "list": {
      "id": "0b7c51e8",
      "name": "Newsletter"
    },
    "tags": [
      {
        "id": "7c2ef4b1",
        "name": "vip"
      }
    ],
    "createdAt` / `updatedAt": "value"
  }
}

Voir aussi