Fedex Logo

はじめに

FedEx APIは、OAuth 2.0(ベアラートークン)認証方法を基に、お客様のアプリを承認し、お客様のAPIリクエストを認証します。このOAuthアクセストークンは、フェデックスのリソースへのアクセスを認証および承認するために、60分ごとに再生成し、各APIトランザクションで提供されなければなりません。

認証APIの詳細

フェデックスのリソースを認証する際に必須なこの API は、お客様に API リクエスト承認機能を提供します。次のセクションでは、API の前提条件について説明します。

FedEx Developer Portalへの登録時に、フェデックスはクライアント ID(API キー)とクライアントシークレット(シークレット・キー)の組み合わせを提供して、お客様のプロジェクトの API リクエストを認証します。お客様の組織の各プロジェクトは、API 認証情報と呼ばれるクライアント ID とクライアントシークレットの組み合わせに関連付けられています。

注意:顧客(Internal、CompatibleまたはProprietary Parent Child)は、フェデックスの担当者に連絡して、APIとシークレットキーを取得できます。

セキュリティをさらに強化するために、FedEx®の顧客(Internal、CompatibleまたはProprietary Parent Child)は、OAuthトークンを作成するためのAPIキーとシークレットキーに加えて、子キー(カスタマーシークレット)と子シークレット(カスタマーパスワード)を送信することができます。このトークンは、認証のためのすべての API リクエストで使用されます。

シークレット・キーを忘れた場合は、FedEx Developer Portalの「プロジェクト」ページから再作成できます。

注意:新しいキーを作成されますと、お客様のアプリケーションのコードが変更されます。

この文書の重要な情報:

  • API キーとしてのクライアントキー
  • シークレット・キーとしてのクライアントシークレット
  • カスタマーキーとしての子キー
  • カスタマーパスワードとしての子シークレット

API 認証情報は次をします。

  • これらは、APIを呼び出すプロジェクトを識別します。
  • これらは、お客様のプロジェクトで有効になっている API へのアクセスを許可します。

API認証情報を取得する方法

認証情報は、FedEx Developer Portalでの入力に基づいて作成されます。

  • クライアントID – FedEx Developer Portalでプロジェクトが作成されると、APIキー(クライアントID)が作成されます。「プロジェクトの概要」ページで、プロジェクトに関連付けられているAPIキーを表示することもできます。
  • クライアントシークレット – FedEx Developer Portalでプロジェクトが作成されると、「確認」ページにシークレットキー(クライアントシークレット)が表示されます。必要に応じて、「プロジェクトの概要」ページでシークレットキーを再生成することもできます。

注意:FedEx®の顧客(Internal、CompatibleまたはProprietary Parent Child)は、OAuthトークンを作成するためのAPIキーとシークレットキーに加えて、子キー(カスタマーシークレット)と子の秘密(カスタマーパスワード)を送信する必要があります。子キーと子シークレットを取得する方法については、認証情報登録APIを参照してください。

認証APIの仕組み

API認証

FedEx DeveloperポータルでAPI 認証情報を保護すると、OAuthエンドポイントを使用してアクセストークンを取得します。アクセストークンは、各APIトランザクションで認証情報として使用されます。

これらは、OAuthリクエストに関連する必要な入力情報は次のとおりです。

  • grant_type – 顧客の種類。(有効な値:client_credentials、csp_credentials、client_pc_credentials)
  • client_id – プロジェクト API キーを参照します。
  • client_secret – プロジェクト API シークレット・キーを参照します。

FedEx® Internal、Compatible、またはProprietary Parent Childの顧客は、以下の追加入力を送信してください。

  • child_id – 認証情報登録 API リクエストを通じて返されたカスタマーキー。
  • child_secret – 認証情報登録 API リクエストを通じて返されたカスタマーパスワード

このリクエストの結果は以下のようになります。

  • access_token – APIトランザクションで使用しなければならない暗号化された OAuthトークン。
  • token_type – トークンの種類。この場合、ベアラ認証です。
  • expires_in – トークンの有効期限(ミリ秒単位)。トークンの標準有効期限は 1 時間です。
  • 範囲 – 消費者に提供される承認範囲。

リクエスト:

POST /oauth/token HTTP/1.1
grant_type= client_credentials&client_id=your client ID&client_secret=Your secret

応答:

{ ″access_token″: ″eyJhbGciOiJIUzI1NiIsInR5cCI6IkpX……..″,
″token_type″: ″bearer″,
″expires_in″: 3600,
″scope″: ″CXS″
}

FedEx® Internal または Compatible の顧客へのリクエスト:

POST /oauth/token HTTP/1.1
grant_type= csp_credentials&client_id=Client ID&client_secret= Client secret&child_key=Child key&child_secret=Child Secret

応答:

{ ″access_token″: ″eyJhbGciOiJIUzI1NiIsInR5cCI6IkpX……..″,
″token_type″: ″bearer″,
″expires_in″: 3600,
″scope″: ″CXS″
}

FedEx® Proprietary Parent Childの顧客へのリクエスト:

POST /oauth/token HTTP/1.1
grant_type= client_pc_credentials&client_id=Client ID&client_secret= Client secret&child_key=Child key&child_secret=Child Secret

応答:

{ ″access_token″: ″eyJhbGciOiJIUzI1NiIsInR5cCI6IkpX……..″,
″token_type″: ″bearer″,
″expires_in″: 3600,
″scope″: ″CXS″
}

注意:アクセストークンは1時間で期限切れになりますが、oauth/トークンエンドポイントへの POST リクエストを使用して再生成できます。

CLOSE

Response

Copy