設定您的 API 環境
在使用 Direct Link API 之前,您必須先設定環境。
一般必要條件
設定帳戶以存取 Direct Link。 請確認您的帳戶已 升級為付費帳戶。
API 必要條件
在使用 API 與直接連結互動之前,您必須取得 IAM 令牌並將終端節點儲存為變數。 同時驗證您是否可以存取 IBM Cloud Direct Link API 服務。
下列範例使用 directlink.cloud.ibm.com 廣域端點。
步驟 1:將 API 金鑰儲存為變數
執行下列指令將帳戶的 API 金鑰儲存在環境變數中。 如果您沒有 API 金鑰,請參閱建立 API 金鑰。
apikey="<YOUR_API_KEY>"
步驟 2:取得 IBM Identity and Access Management (IAM) 記號
執行以下指令,使用 JSON 處理工具 jq 來取得並解析 IAM 憑證。 可以修改此指令以使用其他剖析工具,也可以移除指令的最後一部分(如果偏好手動剖析記號)。
IAM_TOKEN=`curl -k -X POST \
--header "Content-Type: application/x-www-form-urlencoded" \
--header "Accept: application/json" \
--data-urlencode "grant_type=urn:ibm:params:oauth:grant-type:apikey" \
--data-urlencode "apikey=$apikey" \
"https://iam.cloud.ibm.com/identity/token" |jq -r '(.token_type + " " + .access_token)'`
若要檢視 IAM 憑證,請執行 echo $IAM_TOKEN。 結果如下:
Bearer <your_token>
「Authorization」標頭要求該憑證必須以 Bearer 開頭。 如果結果中未包含 Bearer``,請更新 iam_token 變數以將其納入其中。 這些範例假設 Bearer 中包含 IAM_TOKEN。
因為 IAM 記號到期,您必須重複先前的步驟,每小時重新整理一次記號。
步驟 3:將 API 端點儲存為變數
執行以下指令,將 API 端點儲存至變數中,以便稍後在您的工作階段中重複使用。
公用端點:
directlink_api_endpoint="https://directlink.cloud.ibm.com"
虛擬專用端點:
directlink_api_endpoint="https://private.directlink.cloud.ibm.com"
要確認該變數是否已儲存,請執行 echo $directlink_api_endpoint ,並確保回應內容並非空值。
步驟 4:將 API 版本儲存為變數
每個 API 請求都必須包含格式為 YYYY-MM-DD 的 version 參數。 執行以下指令,將版本日期儲存至變數中,以便在本次工作階段中重複使用。 有關設定 version 參數的更多資訊,請參閱《 Direct Link API 》中的「 版本控制 」章節。
api_version="2020-03-31"
要確認此變數是否已儲存,請執行 ``echo $api_version``,並確保回應內容並非空值。
步驟 5:驗證您是否具有 API 存取權
如果遇到非預期結果,請在 --verbose 指令後面新增 curl(除錯)旗標,以取得詳細的記載資訊。
-
呼叫 列出可用的位置 API,以 JSON 格式查看您的直接鏈結可用的位置。 至少回傳一個物件。
本範例列出 Direct Link Dedicated 閘道可用的位置。 對於 Direct Link Connect,請將
connect替換為dedicated。curl -X GET "$directlink_api_endpoint/v1/offering_types/dedicated/locations?version=$api_version" -H "Authorization: $IAM_TOKEN" -
呼叫 列出閘道 API,以 JSON 格式查看您已在帳戶下建立的任何直接鏈結。
curl -X GET "$directlink_api_endpoint/v1/gateways?version=$api_version" -H "Authorization: $IAM_TOKEN"