跳到內容

認證

應用程式會提供您一組 Client IDSecret Key,您需要使用它們來建立一個已認證的 OAuth2 會話,以便與 Wink 和 TripPay API 進行通訊。

以下是建立已認證會話的步驟。

步驟 1. 在測試環境或正式環境中取得存取權杖:

您很可能會使用您所使用語言的強大 OAuth2 函式庫,該函式庫會為您處理所有繁重的工作。 我們的範例將展示使用 curl 從命令列進行最基本的操作。

Terminal window
curl -X POST https://staging-iam.wink.travel/oauth2/token \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials" \
-d "client_id=<YOUR_CLIENT_ID>" \
-d "client_secret=<YOUR_SECRET_KEY>"
Terminal window
curl -X POST https://iam.wink.travel/oauth2/token \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials" \
-d "client_id=<YOUR_CLIENT_ID>" \
-d "client_secret=<YOUR_SECRET_KEY>"

這將回傳一個存取權杖,以及其他 OAuth2 回應資料:

{
"access_token": "abc123"
}

當您呼叫我們的任何端點時,請在標頭中包含以下內容:

  • Wink-Version = 2.0 最新版本 - 請參閱我們的 API 文件了解其他可用版本。
  • Authorization = Bearer ${access_token} 插入您的存取權杖。

Scope 是您的存取權杖所攜帶的權限。當您請求權杖時,會在 scope 參數中傳遞以空格分隔的權限清單,該權杖只能存取這些權限所涵蓋的區域。使用 client_credentials 授權時,您在權杖請求中設定權限範圍 — 請參考上方 curl 範例及 Postman 操作指南

Scopes 命名格式為 section.action,其中 action 為以下之一:

  • read — 檢視資源(安全的 GET 請求)
  • write — 建立及更新資源(POST / PUT / PATCH
  • remove — 刪除資源(DELETE

Wink 依功能區域分組權限。請僅請求您的整合所需的權限:

權限群組權限範圍可解鎖的功能風險
帳戶account.read account.write account.remove管理實體、團隊成員、設定、應用程式低至中
庫存inventory.read inventory.write inventory.remove物業、房型、價格方案、價格、附加項目、可用性、活動、景點低至中
訂單booking.read booking.write booking.remove搜尋、檢視、建立、取消及退款訂單;結帳;取消政策低至中
行銷marketing.read marketing.write marketing.remove活動、優惠、銷售通路、WinkLinks、管理社群、忠誠計畫低至中
內容content.read content.write content.remove物業描述、評論、媒體、地圖、綠色指數低至中
分析analytics.read analytics.write analytics.remove報告與分析 — 收入、排行榜低至中
整合integrations.read integrations.write integrations.remove通路管理、外部訂單系統、Google Hotel、通知端點、訂單同步低至中
付款payment.read payment.write payment.remove付款處理、Stripe、Revolut、付款、訂閱中至高
會計accounting.read accounting.write accounting.remove會計、提款帳冊、對帳中至高
MCPmcp.read mcp.write mcp.remove開啟 MCP 傳輸 (/mcp) 給 AI 代理使用低至中

請注意以下幾點:

  • 請求最小權限。 僅請求您的整合實際使用的權限 — 若權杖授予過廣,若外洩會造成更大影響範圍。
  • 未知權限會被拒絕。 請求未註冊的權限或不存在的權限,會在發行權杖時失敗。
  • mcp.* 僅限 AI 代理客戶端。 您需要它來開啟 MCP 傳輸;一般 REST API 呼叫不需要。詳見 Model Context Protocol