DELETE /api/v1/contacts/{contactId}/tags/{tagId}
Détache un tag d'un contact. Idempotent : retirer un tag que le contact ne porte pas répond aussi 200.
Autorisation
| Rôle dans l'organisation | Cet endpoint |
|---|---|
OWNER | Autorisé |
ADMIN | Autorisé |
MEMBER | Refusé — 403 |
Paramètres de chemin
| Paramètre | Type | Description |
|---|---|---|
contactId | string | Obligatoire. Le contact dont retirer le tag |
tagId | string | Obligatoire. Le tag à détacher — le tag lui-même n'est pas touché |
Exemple
bash
curl -X DELETE -H "x-api-key: $AGENTMAIL_API_KEY" \
"https://www.agentsmail.io/api/v1/contacts/$CONTACT_ID/tags/$TAG_ID"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é estmemberde l'organisation, pasadmin.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
Idempotent : détacher un tag que le contact n'a jamais porté répond de la même façon.| Champ | Type | Description |
|---|---|---|
success | boolean | Indique si l'opération a réussi |
data.id | string | Identifiant du contact |
data.email | string | Son adresse — unique au sein de sa liste |
data.firstName / lastName | string \ | null |
data.status | string | pending, subscribed, unsubscribed, bounced, complained |
data.listId | string | La liste à laquelle il appartient — un contact appartient à une seule liste |
data.list | object | {id, name} de cette liste |
data.tags | array | {id, name} de chaque tag porté |
data.createdAt / updatedAt | string | Dates 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"
}
}