compute
DELETE /v1/compute/servers/{serverId}/add-on
Cancel this machine's add-on and release its licence.
Authentification
Envoyez une clé API en tant que jeton du porteur. La clé doit posséder l'autorisation sites.view ; une clé qui ne l'a pas est refusée avec le code 403, et non 404.
Cet endpoint ne prend aucun identifiant d'organisation. Votre clé identifie déjà l'organisation à laquelle elle appartient, et la réponse y est limitée.
Essayer
Remplacez tout ce qui se trouve entre crochets par vos propres valeurs, et le espace réservé à la clé par une clé de votre tableau de bord.
curl -X DELETE https://api.zinndigital.com/v1/compute/servers/{serverId}/add-on \
-H "Authorization: Bearer zdk_live_…"Connecté ? La console d'API de votre tableau de bord saisit votre véritable ID d'organisation ainsi que votre propre clé, et exécute la requête sur l'API de production afin que vous puissiez voir la réponse réelle. Ouvrir ce point de terminaison dans la console API
Détails
Stops the charge and gives the licence back to the vendor. Requires `sites.view` and `billing.payment.manage`, the same pair as buying one. ⛔ Not `sites.delete`: cancelling destroys no customer data, it stops a cost — and putting it behind the wipe key would stop a customer turning off something they are paying for. ⛔⛔ And not `billing.entitlement.manage`, which is what it was until 2026-08-17: no customer role holds that key, so the customer paying $29 a month for the managed service was the one person who could not stop paying it. The machine's recurring price falls by the add-on's amount **from the next period**. The period already paid for is honoured rather than clawed back. ⛔ **The vendor is released before our row is marked**, deliberately. If the vendor call fails we keep an active row and go on paying, which is visible and swept for; the other order loses the licence from our side while the vendor keeps billing it — an orphan no sweep can find, because the row naming the address is gone. ⭐ For a pooled licence (LiteSpeed) the seat goes to `releasing`, not `free`: the serial is IP-bound and the release is manual in the vendor's own portal, so returning it to stock would hand the next customer a serial still locked to somebody else.
Paramètres
| Nom | Type | Obligatoire | Qu'est-ce que c'est |
|---|---|---|---|
serverId (path) | Uuid | Oui | The server's id, as `listComputeServers` reports it. **Ours** (UUIDv7), minted when the order row was written — never the provider's own identifier for the machine. |
Réponse
| Nom | Type | Obligatoire | Qu'est-ce que c'est |
|---|---|---|---|
data | ComputeAddOnAssignment | Oui | One machine's add-on — what was bought, what it costs, and where it has got to. ⛔ **Never carries the licence key or the vendor's reference.** Key material belongs in Vault; a s… |
Erreurs que cet point de terminaison peut renvoyer
401 · 403 · 404 · 422 · 429