billing
POST /v1/subscriptions/{subscriptionId}/auto-renew
Turn a subscription's renewal on or off.
Pagpapatotoo
Magpadala ng API key bilang isang bearer token. Kailangang taglayin ng key ang pahintulot na billing.payment.manage; ang key na wala nito ay tatanggihan gamit ang 403, hindi 404.
Ang endpoint na ito ay hindi nangangailangan ng id ng organisasyon. Natutukoy na ng iyong key ang organisasyong kinabibilangan nito, at nakatuon ang tugon dito.
Subukan ito
Palitan ang anuman sa loob ng mga panaklong na may anggulo ng iyong sariling mga halaga, at ang placeholder ng key na may key mula sa iyong dashboard.
curl -X POST https://api.zinndigital.com/v1/subscriptions/{subscriptionId}/auto-renew \
-H "Authorization: Bearer zdk_live_…" \
-H "Content-Type: application/json" \
-d '{ "auto_renew": <boolean> }'Nakalagda? Ang API console sa iyong dashboard ay awtomatikong naglalagay ng iyong tunay na ID ng organisasyon at sariling susi, at pinapatakbo ang kahilingan laban sa live na API upang makita mo ang aktwal na tugon. Buksan ang endpoint na ito sa console ng API
Mga Detalye
**The customer's renewal switch, and the only one there is.** With `auto_renew` **false** the subscription runs to the end of the period already paid for and is then `expired` by the rebill sweep — nothing is minted, no card is charged, and the entitlements lapse at the same instant the period does. It is **not** an immediate cancellation: every day already bought is kept. With it **true** the subscription is selected by the nightly sweep at `current_period_end`, an order is minted and the payment method is charged. The switch is reversible right up to that moment, which is the customer's way back after turning it off. For a compute server the machine follows on its own: the provider's own renewal flag is pinned to "hold" for the life of every machine and is never exposed, so an unrenewed contract keeps serving for 24 hours, is powered down, and is deleted six days after that. Zinn® issues each vendor renewal explicitly, after the money is captured. Find a server's subscription with `subscription_id` on `GET /v1/compute/servers/{serverId}/renewal`. The response is the subscription **as the database now holds it**, not an echo of the request. Requires `billing.payment.manage` — the authority to decide what this account is charged. It deliberately does **not** require `sites.view`: a subscription is not a site, and this endpoint governs every plan, including ones that own no site. `404` for a subscription in another tenant as well as for one that does not exist — a `403` would confirm that an id belongs to somebody. `422` when the subscription has already ended (`canceled`/`expired`): writing `true` to a row the sweep can never select again would tell the customer they were covered when nothing will charge or serve them.
Mga Parameter
| Pangalan | Uri | Kailangan | Ano ito |
|---|---|---|---|
subscriptionId (path) | Uuid | Oo | The subscription whose renewal is being changed. |
Katawan ng kahilingan
| Pangalan | Uri | Kailangan | Ano ito |
|---|---|---|---|
auto_renew | boolean | Oo | `true` to charge again at `current_period_end`; `false` to run to the end of the paid period and then expire. |
Tugon
| Pangalan | Uri | Kailangan | Ano ito |
|---|---|---|---|
id | Uuid | Oo | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
org_id | Uuid | Oo | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
status | SubscriptionStatus | Oo | A subscription's lifecycle state (docs/05 §1). |
plan | SubscriptionPlanRef | Oo | The pinned plan version a subscription was sold (a purchase-time snapshot). |
price | MoneyAmount | Oo | The captured price the subscriber pays (minor units + code, §2.8). |
interval | string<monthly, annual> | Oo | — |
entitlements | object | Oo | The resolved entitlements captured at purchase (feature/quota map). |
current_period_start | string | Oo | — |
current_period_end | string | Oo | — |
auto_renew | boolean | Oo | Whether this subscription charges again at `current_period_end`. `false` does not mean it has ended: it runs to the end of the period already paid for and is then `expired`. Cha… |
started_at | string | Oo | — |
canceled_at | object | Hindi | — |
created_at | string | Oo | — |
updated_at | string | Hindi | — |
Mga error na maibabalik ng endpoint na ito
401 · 403 · 404 · 422 · 429