DELETE /api/v1/topics/{topicId}
Supprime un sujet. Seul un sujet que rien ne porte peut partir.
Supprimer un sujet jette les refus exprimés par les gens. Tous ceux qui l'avaient refusé recommencent à recevoir ce thème, et il n'y a pas d'annulation possible. Lisez
optOutCount sur Obtenir un sujet avant d'appeler ceci.Autorisation
| Rôle dans l'organisation | Cet endpoint |
|---|---|
OWNER | Autorisé |
ADMIN | Autorisé |
MEMBER | Refusé — 403 |
Paramètres de chemin
| Paramètre | Type | Description |
|---|---|---|
topicId | string | Obligatoire. Le sujet à supprimer |
Exemple
bash
curl -X DELETE -H "x-api-key: $AGENTMAIL_API_KEY" \
"https://www.agentsmail.io/api/v1/topics/$TOPIC_ID"Réponse
200 OK— l'identifiant de ce qui a été supprimé.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— sujet inexistant, ou il appartient à une autre organisation. L'API ne confirme jamais qu'un identifiant existe à un appelant qui n'y a pas droit.409 Conflict— une campagne ou une séquence porte encore le sujet. Le message les nomme. Réessayer ne servira à rien : détachez-les d'abord, ou gardez le sujet.429 Too Many Requests— plus de 120 requêtes en une minute pour cette clé.
Champs de la réponse
| Champ | Type | Description |
|---|---|---|
success | boolean | Indique si l'opération a réussi |
data.id | string | Identifiant de ce qui a été supprimé |
Exemple de réponse
json
{
"success": true,
"data": {
"id": "7c2e4b19"
}
}Recette pour agent
Détachez, puis supprimez — et lisez le message du409 plutôt que de réessayer :
js
const usage = (await get(`/api/v1/topics/${topicId}`)).data
for (const campaign of usage.campaigns) {
await patch(`/api/v1/campaigns/${campaign.id}`, {topicId: null})
}
const response = await del(`/api/v1/topics/${topicId}`)
if (response.status === 409) {
// Something was attached in the meantime — the error names it
}Remarques
- Le refus est recalculé au moment de la suppression, et non tiré de ce que vous avez lu en dernier. Une campagne créée entre vos deux appels bloque la suppression.
- Détacher un sujet d'une séquence publiée dont des étapes portent
{{topicOptOutUrl}}est lui-même refusé. Ouvrez un brouillon, retirez le shortcode, publiez — ou gardez le sujet.