認証
すべての Public API リクエストには Bearer トークンが必要です。チャネル認証情報と倉庫コードは developer portal で管理します。クライアントアプリに埋め込まないでください。
API キー {#api-keys}
アプリが承認された後、Developer Portal → API Keys でキーを作成します。
| 項目 | 説明 |
|---|---|
| 形式 | Authorization: Bearer hio_live_… (本番) またはポータルから発行されたテストキー |
| スコープ | 1アプリにつき1キー。クォータとチャネルアクセスはアプリのサブスクリプションプランに従います。 |
| ローテーション | 漏えいしたキーはただちに取り消してください。本番では取り消す前に代替キーを作成します。 |
| 保存場所 | サーバー側のみ。モバイルアプリ、ブラウザ JS、公開リポジトリにキーを露出しないでください。 |
リクエスト例
curl https://api.hiobuy.com/v1/products/detail \
-H "Authorization: Bearer hio_live_xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"channel": "1688",
"product_id": "554456348334",
"language": "en"
}'チャネル認可 (前提条件) {#channel-authorization}
API キーだけでは不十分です。各アプリは、そのマーケットプレイスの商品 API または注文 API を呼び出す前に チャネル認可 を完了する必要があります。
| モード | 設定する内容 | Gateway が使用するもの |
|---|---|---|
| 自社フルフィルメント | ポータル内のチャネル別 OAuth またはトークン JSON | アプリ + チャネル単位で保存されたトークン |
| HIOBuy 倉庫 | 1つの倉庫開発者コード | コード + サーバー側の管理トークン。調達/フルフィルメントは HIOBuy に転送 |
ポータル認可 を参照してください。チャネルが認可されていない場合、呼び出しは 401 CHANNEL_NOT_AUTHORIZED (Errors) を返します。
送信してはいけないもの {#what-not-to-send}
- Taobao / 1688 / Weidian のアクセストークンまたはリフレッシュトークン
- 倉庫開発者コード (Gateway がフルフィルメントルートに付与します)
- Public API 呼び出しでのポータルセッション JWT
リクエスト追跡 {#tracing}
すべてのレスポンスには以下が含まれます。
x-request-idヘッダー — JSON 本文のrequest_idと照合できます- 課金対象ルートでは任意のクォータヘッダー — Rate limits を参照
HIOBuy サポートに問い合わせる際は x-request-id を含めてください。
一般的な認証エラー {#auth-errors}
| HTTP | コード | 意味 |
|---|---|---|
| 401 | INVALID_API_KEY | Bearer トークンがない、取り消されている、または形式が不正 |
| 401 | CHANNEL_NOT_AUTHORIZED | アプリがポータルで対象チャネルを認可していない |
| 403 | INSUFFICIENT_SCOPE | キーまたはアプリに操作権限がない |
| 403 | FULFILLMENT_MODE_NOT_SUPPORTED | アプリが自社フルフィルメントモードの状態で Fulfillment API を呼び出した |