IM
ZH-TW
文件首頁
選單
指南

訂閱所有者控制

透過 api.inbox-manager.com 作為帳戶擁有者管理訂閱生命週期操作。

inbox-manager subscriptions client-flow

訂閱所有者控制

目的:允許帳戶擁有者檢查計劃並執行訂閱生命週期操作。

使用者介面流程

  1. 使用者開啟所選令牌帳戶的計費頁面。
  2. UI 載入GET /api/subscriptions
  3. UI 載入GET /api/subscriptions/features
  4. UI 載入GET /api/subscriptions/identity
  5. UI 載入GET /api/subscriptions/merchants
  6. 當所有者開始計費操作時,UI 會建立結帳或入口網站會話。
  7. UI 從顯式所有者操作執行同步/更改/取消操作。

客戶端庫流程

const subs = await api.subscriptions.list();
const features = await api.subscriptions.features();
const merchants = await api.subscriptions.merchants();

const checkout = await api.subscriptions.createCheckoutSession({
  price_id,
  success_url,
  cancel_url,
});

await api.subscriptions.change(subscriptionId, {
  interval: "year",
});

HTTP/curl 流程

API_BASE_URL="https://api.inbox-manager.com"

curl -sS "${API_BASE_URL}/api/subscriptions" \
  -H "authorization: Bearer ${BEARER_TOKEN}"

curl -sS "${API_BASE_URL}/api/subscriptions/features" \
  -H "authorization: Bearer ${BEARER_TOKEN}"

curl -sS "${API_BASE_URL}/api/subscriptions/identity" \
  -H "authorization: Bearer ${BEARER_TOKEN}"

curl -sS "${API_BASE_URL}/api/subscriptions/merchants" \
  -H "authorization: Bearer ${BEARER_TOKEN}"

curl -sS -X POST "${API_BASE_URL}/api/subscriptions/stripe/checkout-session" \
  -H "authorization: Bearer ${BEARER_TOKEN}" \
  -H "content-type: application/json" \
  --data "{\"price_id\":\"${PRICE_ID}\",\"success_url\":\"${SUCCESS_URL}\",\"cancel_url\":\"${CANCEL_URL}\"}"

curl -sS -X POST "${API_BASE_URL}/api/subscriptions/stripe/portal-session" \
  -H "authorization: Bearer ${BEARER_TOKEN}" \
  -H "content-type: application/json" \
  --data "{\"return_url\":\"${RETURN_URL}\"}"

curl -sS -X POST "${API_BASE_URL}/api/subscriptions/sync?allow_deletes=false" \
  -H "authorization: Bearer ${BEARER_TOKEN}" \
  -H "content-type: application/json" \
  --data '{}'

curl -sS -X POST "${API_BASE_URL}/api/subscriptions/${SUBSCRIPTION_ID}/change" \
  -H "authorization: Bearer ${BEARER_TOKEN}" \
  -H "content-type: application/json" \
  --data '{"interval":"month"}'

curl -sS -X POST "${API_BASE_URL}/api/subscriptions/${SUBSCRIPTION_ID}/cancel" \
  -H "authorization: Bearer ${BEARER_TOKEN}" \
  -H "content-type: application/json" \
  --data '{"timing":"period_end"}'

curl -sS -X POST "${API_BASE_URL}/api/subscriptions/stripe/checkout-session-sync" \
  -H "authorization: Bearer ${BEARER_TOKEN}" \
  -H "content-type: application/json" \
  --data "{\"session_id\":\"${SESSION_ID}\"}"

註釋

  • 訂閱途徑無需帳號;帳戶上下文來自 JWT acc
  • 擁有者授權由上游身分驗證訂閱端點強制執行。
  • inbox-manager 直接轉送使用者承載令牌。
  • Stripe webhook 回呼不通過 inbox-manager 代理。