Fedex Logo
Developer Portal

API Authorization

Introduktion

FedEx API:er har stöd för autentiseringsmetoden OAuth 2.0 (ägartoken) för att auktorisera ditt programs API-begäran med FedEx-resurser. Den här OAuth-åtkomsttoken måste återskapas var 60:e minut och tillhandahållas med varje API-transaktion för att autentisera och auktorisera din tillgång till FedEx-resurserna.

Information om API:et Auktorisering

Med detta API kan du godkänna API-förfrågningarna och det krävs för att verifiera FedEx-resurserna. Följande avsnitt beskriver förutsättningarna för API:et:

När man registrerar sig på FedEx Developer Portal tillhandahåller FedEx en kombination av klient-ID (API-nyckel) och klienthemlighet (Secret Key) för att verifiera API-förfrågningar för ditt projekt. Varje projekt under din organisation är associerat med en kombination av klient-ID och klienthemlighet, som åberopas som API-inloggningsuppgifter.

Obs! Kunder (interna, kompatibla, överordnade/underordnade ägare eller integratörer) kan kontakta en FedEx-representant för att få en API och hemliga nycklar.

För att ge ett extra lager av säkerhet kan FedEx®-kunder (interna, kompatibla, överordnade/underordnade ägare eller integratörer) skicka en underordnad nyckel (kundhemlighet) och ett underordnat lösenord (kundlösenord) utöver API-nyckeln och den hemliga nyckeln för att skapa en OAuth-token. Den här token används i varje API-begäran för autentisering.

Du kan återskapa den glömda hemliga nyckeln från sidan Projekt på FedEx Developer Portal.

Obs: Skapandet av nya nycklar kommer att resultera i att koden ändras i ditt program.

Viktig information i det här dokumentet:

  • Klientnyckel som API-nyckel
  • Klienthemlighet som hemlig nyckel
  • Barnnyckel som kundnyckel
  • Barnhemlighet som kundlösenord

API-inloggningsuppgifter tjänar följande syften:

  • De identifierar projektet som anropar API:erna.
  • De godkänner åtkomst till API:erna som är aktiverade under ditt projekt.

Så här skaffar du API-autentiseringsuppgifter

Autentiseringsuppgifter skapas baserat på uppgifter i FedEx Developer Portal:

  • Klient-ID – API-nyckeln (klient-ID:t) skapas när ett projekt skapas på FedEx Developer Portal. Du kan också se API-nyckeln som är associerad med projektet på sidan Projektöversikt.
  • Klienthemlighet – Du kommer att se den hemliga nyckeln (klienthemligheten) på bekräftelsesidan när ett projekt har skapats på FedEx Developer Portal. Vid behov kan den hemliga nyckeln också återskapas på sidan Projektöversikt.

Obs! FedEx®-kunder (interna, kompatibla, överordnade/underordnade ägare eller integratörer) behöver skicka en underordnad nyckel (kundhemlighet) och en underordnad hemlighet (kundlösenord) utöver API-nyckeln och den hemliga nyckeln för att skapa en OAuth-token. Se Credential Registration API för hur du får en underordnad nyckel och underordnad hemlighet.

Så här fungerar auktoriserings-API

API-auktorisering

När du har säkrat API-autentiseringsuppgifterna på FedEx Developer Portal använder du OAuth-slutpunkten för att få en åtkomsttoken som används som autentiseringsuppgift för varje API-transaktion.

Det här är de obligatoriska uppgifterna som associeras med OAuth-begäran:

  • grant_type – Typ av kund. (Giltiga värden: client_credentials, csp_credentials, client_pc_credentials)
  • client_id – Avser projektets API nyckel.
  • client_secret – Avser projektets API hemliga nyckel.

FedEx®-kunder (interna, kompatibla, överordnade/underordnade ägare eller integratörer) behöver skicka följande extra uppgifter:

  • child_id - Kundnyckel returneras via begäran från API:et Registrering av autentiseringsuppgifter.
  • child_secret - Kundlösenord returneras via begäran från API:et Registrering av autentiseringsuppgifter

Resultatet av denna begäran ska returneras nedan:

  • access_token - Den krypterade OAuth-token som måste användas i API-transaktionen.
  • token_type - Typ av token. I det här fallet är det ägarautentisering.
  • expires_in - Token utgångstid i millisekunder. Standard utgångstid för en Token är en timme.
  • Omfattning - Omfattning av tillståndet som tillhandahålls till konsumenten.

Exempel

Begäran:

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

Svar:

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

Begäran för FedEx®-kunder (interna, kompatibla eller integratörer):

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

Svar:

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

Begäran för FedEx®-kunder som är överordnade/underordnade ägare:

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

Svar:

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

Obs: Åtkomst-token löper ut om en timme, det kan genereras igen genom att använda en POST-begäran till slutpunkten för oauth/token.

API Authorization (1.0)

API Authorization

Use this endpoint to request the OAuth token (bearer token) to authorize your application to access FedEx resources. You can pass this bearer token in your subsequent individual FedEx API endpoint requests.
Note: FedEx APIs do not support Cross-Origin Resource Sharing (CORS) mechanism.

header Parameters
content-type
required
string
Example: application/x-www-form-urlencoded

This is used to indicate the media type of the resource. The media type is a string sent along with the file indicating format of the file.
Example: application/x-www-form-urlencoded

Request Body schema: application/x-www-form-urlencoded
grant_type
required
string

Specify Type of customer requesting the Oauth token.
Valid Values: client_credentials, csp_credentials, client_pc_credentials
Note:
client_credentials - should be used for customers, Integrators, and brand new Compatible Provider customers who are yet to unboard child accounts.
csp_credentials - should be used for Integrators, and Compatible Provider customers with existing child accounts.
client_pc_credentials – should be used for Proprietary Parent Child customers.

client_id
required
string

Specify the Client ID also known as API Key received during FedEx Developer portal registration.
Example: XXXX-XXX-XXXX-XXX

client_secret
required
string

Specify the Client secret also known as Secret Key received during FedEx Developer portal registration.
Example: XXXX-XXX-XXXX-XXX

child_Key
string

Specify the Client ID also known as Customer Key. This element is used as a login credential for an Integrator customer, Compatible customer or a Proprietary Parent Child customer to access the application on behalf of their customer.
Example: XXXX-XXX-XXXX-XXX
Note: This element should be used by Integrator, Compatible and Proprietary Parent Child customers.

child_secret
string

Specify the Client secret also known as Customer Secret. This element is used as a login credential for an Integrator customer, Compatible customer or a Proprietary Parent Child customer to access the application on behalf of their customer.
Example: XXXX-XXX-XXXX-XXX
Note: This element should be used by Integrator, Compatible and Proprietary Parent Child customers.

Responses

200

Success

401

Unauthorized

500

Failure

503

Service Unavailable

post /oauth/token

Sandbox Server

https://apis-sandbox.fedex.com/oauth/token

Production Server

https://apis.fedex.com/oauth/token

Request samples

Content type
application/x-www-form-urlencoded
Example
Copy
grant_type=client_credentials&client_id=Your_client_ID&client_secret=Your_secret

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpX……",
  • "token_type": "bearer",
  • "expires_in": 3600,
  • "scope": "CXS"
}
CLOSE

Response

Copy