extras

POST /v1/extras/{code}/purchase

Purchase an extra service.

すべての extras エンドポイント

すべての開発者向けドキュメント

認証

ベアラー トークンとして API キーを送信します。キーには billing.payment.manage 権限が付与されている必要があります。権限のないキーは 404 ではなく 403 で拒否されます。

組織 ID を入力する場所

このエンドポイントは、JSONボディのフィールドとして org_id を受け取ります。

組織IDは、ダッシュボードのAPIキー画面にキーのすぐ横に表示されています。これは、実行するすべての呼び出しで同じIDになります。

試してみる

アングルブラケット内のすべてをご自身の値に置き換え、キーのプレースホルダーをご利用中のダッシュボードのキーに置き換えてください。

curl -X POST https://api.zinndigital.com/v1/extras/{code}/purchase \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{  }'

ログインしていますか?ダッシュボード内のAPIコンソールでは、実際の組織IDやお客様ご自身のキーが自動入力され、ライブAPIに対してリクエストが実行されるため、実際のレスポンスを確認することができます。 API コンソールでこのエンドポイントを開く

詳細

Buys the extra: it is charged wallet-first then gateway, and handed to durable fulfilment (an automated workflow, or a staff task). The price and fulfilment path are server-decided (docs/26 §3). Requires billing.payment.manage. Two different 422s, and a client must tell them apart: PAYMENT_METHOD_REQUIRED means the organization holds no chargeable payment method, so nothing was presented to any gateway and nothing was refused — the remedy is to add a payment method — or pay with PayPal or cryptocurrency — and buy again. UNPROCESSABLE_ENTITY on this path is a genuine gateway decline. Reporting the first as the second tells a customer who has never entered a card that their bank refused them (docs/491 §7).

パラメータ

名前タイプ必須これがその内容です
code (path)stringはいThe extra's code (e.g. db_maintenance).

リクエスト本文

名前タイプ必須これがその内容です
org_idUuidいいえUUIDv7 identifier — sortable by creation time (docs/02 §8).
site_idobjectいいえ
domain_idobjectいいえThe domain a domain-scoped extra is bought for. Premium DNS (premium_dns) is the first: it is applied at the registrar, per zone, on a name held in our registrar account.…
currencyCurrencyCode | nullいいえThe currency the customer was quoted in on the catalogue screen. Omit it and the engine uses the X-Zinn-Currency header. Extra rows are stored in the base currency only, so…
gatewayobjectいいえThe payment rail the customer picked, from getPaymentOptions. Omit it (or send null) for "no preference", which follows the payment method the organization would be charged on…
pay_withstring<card, credit>いいえWhere the money comes from. Owner ruling 2026-08-24: "Credit pays, or card — customer picks". Only the AI products (ai_webmaster, ai_update_guard and any other row in those…

返信

名前タイプ必須これがその内容です
idUuidはいUUIDv7 identifier — sortable by creation time (docs/02 §8).
org_idUuidはいUUIDv7 identifier — sortable by creation time (docs/02 §8).
extra_idUuidはいUUIDv7 identifier — sortable by creation time (docs/02 §8).
site_idobjectいいえ
domain_idobjectいいえ
statusExtraPurchaseStatusはいAn extra purchase's lifecycle state.
categorystringはい
fulfilment_typeExtraFulfilmentTypeはいHow an extra is delivered.
intervalExtraIntervalはいOne-off charge or a recurring subscription.
priceMoneyAmountはいA money value — integer minor units + an ISO 4217 code (CLAUDE.md §2.8).
recurrencestring<none, active, ended>はいWhether the recurrence behind this purchase is still live. none = it never recurred (a one-off); active = a scheduled charge exists; ended = it recurred and no longer does.…
next_renewal_onobjectいいえThe next charge date, or null. Also null for a live charge that has no date scheduled yet, so read recurrence — not this field — to decide whether a purchase renews at all.
sla_due_atobjectいいえ
completed_atobjectいいえ
failure_reasonstringいいえ
created_atstringはい
updated_atstringはい

このエンドポイントが返すエラー

401 · 403 · 404 · 422 · 429