Retirer un contact d'un sujet

POST /api/v1/contacts/{contactId}/topics/{topicId}/opt-out Empêche un contact de recevoir les messages rattachés à un sujet. Le contact reste abonné à la liste et peut toujours recevoir les messages de tous les autres sujets.

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. Identifiant du contact
topicIdstringObligatoire. Identifiant du sujet à ne plus envoyer

Exemple

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

Réponse

  • 200 OK — la préférence pour le sujet est opted_out, y compris quand elle l'était déjà.
  • 400 Bad Request — un identifiant du chemin n'est pas un UUID valide ; details désigne le champ.
  • 401 Unauthorized — clé absente ou invalide, ou son propriétaire a quitté l'organisation.
  • 403 Forbidden — le propriétaire de la clé est member, pas admin.
  • 404 Not Found — le contact ou le sujet est introuvable, appartient à une autre organisation, ou les deux ressources n'appartiennent pas à la même organisation.
  • 429 Too Many Requests — plus de 120 requêtes en une minute pour cette clé.

Champs de la réponse

ChampTypeDescription
successbooleanIndique si l'opération a réussi
data.contactIdstringIdentifiant du contact
data.topicIdstringIdentifiant du sujet
data.statusstringToujours opted_out

Exemple de réponse

json
{
  "success": true,
  "data": {
    "contactId": "4d19c0a2-8f20-4fb8-9d55-39a88f86d778",
    "topicId": "a338c425-3115-4890-a01c-f2f6f012db93",
    "status": "opted_out"
  }
}

Remarques

  • L'appel est idempotent. Le répéter ne crée pas d'autre préférence et ne change pas la date du retrait initial.
  • Cet appel ne change jamais le statut d'abonnement global du contact.

Voir aussi