Fedex Logo
Developer Portal

API Authorization

Inleiding

De API's van FedEx ondersteunen de verificatiemethode OAuth 2.0 (bearer-token) om uw API-aanvragen te autoriseren voor toepassingen met FedEx-bronnen. Dit OAuth-toegangstoken moet na elke 60 minuten worden gegenereerd en bij elke API-transactie worden verstrekt om uw toegang tot de FedEx-bronnen te verifiëren en te autoriseren.

Details over de autorisatie-API

Met deze API kunt u de API-verzoeken autoriseren. De API is vereist om de FedEx-bronnen te verifiëren. In de volgende sectie worden de vereisten voor de API beschreven:

Tijdens de registratie bij de FedEx Developer Portal biedt FedEx een combinatie van een klant-id (API-sleutel) en klantgeheim (geheime sleutel) om API-verzoeken voor uw project te verifiëren. Elk project onder uw organisatie is gekoppeld aan een combinatie van een klant-id en klantgeheim, API-toegangsgegevens genoemd.

Opmerking: klanten (interne klanten, compatibele klanten, eigen bovenliggende en onderliggende klanten en integraties) kunnen contact opnemen met een FedEx-vertegenwoordiger om API- en geheime sleutels te verkrijgen.

Voor een extra beveiligingslaag kunnen de FedEx®-klanten (interne klanten, compatibele klanten, eigen bovenliggende en onderliggende klanten en integraties) naast de API-sleutel en geheime sleutel ook een onderliggende sleutel (klantgeheim) en onderliggend geheim (klantwachtwoord) verzenden om een OAuth-token aan te maken. Dit token wordt gebruikt in elke API-aanvraag voor autorisatie.

U kunt de vergeten geheime sleutel opnieuw aanmaken vanaf de pagina Projecten op de FedEx Developer Portal.

Opmerking: Het maken van nieuwe sleutels leidt tot wijziging van code in uw toepassing.

Belangrijke informatie in dit document:

  • Klantsleutel als API-sleutel
  • Klantgeheim als geheime sleutel
  • Onderliggende sleutel als klantsleutel
  • Onderliggend geheim als klantwachtwoord

API-toegangsgegevens zijn bedoeld voor de volgende doeleinden:

  • Ze identificeren het project dat een oproep aan de API doet.
  • Ze autoriseren toegang tot de API's die onder uw project zijn ingeschakeld.

API-referenties ontvangen

Toegangsgegevens worden aangemaakt op basis van de invoergegevens in de FedEx Developer Portal:

  • Klant-id – De API-sleutel (klant-id) wordt aangemaakt zodra een project wordt aangemaakt op de FedEx Developer Portal. U kunt de aan het project gekoppelde API-sleutel ook bekijken op de pagina Projectoverzicht.
  • Klantgeheim – U ziet de geheime sleutel (klantgeheim) op de bevestigingspagina zodra een project wordt aangemaakt op de FedEx Developer Portal. Indien nodig kan de geheime sleutel ook opnieuw worden gegenereerd, op de pagina Projectoverzicht.

Opmerking: FedEx®-klanten (interne klanten, compatibele klanten, eigen bovenliggende en onderliggende klanten en integraties) moeten naast de API-sleutel en geheime sleutel ook een onderliggende sleutel (klantgeheim) en onderliggend geheim (klantwachtwoord) verzenden om een OAuth-token aan te maken. Raadpleeg Gegevensregistratie-API voor het verkrijgen van een onderliggende sleutel en een onderliggend geheim.

De autorisatie-API gebruiken

Autorisatie-API

Zodra u de API-toegangsgegevens op de FedEx Developer Portal hebt veiliggesteld, gebruikt u het OAuth-eindpunt om een toegangstoken te krijgen dat u bij elke API-transactie als inloggegevens kunt gebruiken.

Dit zijn de verplichte invoergegevens die gekoppeld zijn aan het OAuth-verzoek:

  • grant_type – Type klant. (Geldige waarden: client_credentials, csp_credentials, client_pc_credentials)
  • client_id – Refereert aan de API-sleutel van het project.
  • client_secret – Refereert aan de geheime API-sleutel van het project.

Voor interne klanten, compatibele klanten, eigen bovenliggende en onderliggende klanten en integratie-klanten van FedEx®  moeten de onderstaande extra inputs worden meegestuurd:

  • child_id – Geretourneerde klantsleutel via aanvraag voor gegevensregistratie-API.
  • child_secret – Geretourneerd klantwachtwoord via aanvraag voor gegevensregistratie-API.

Het resultaat van deze aanvraag hoort het volgende weer te geven:

  • access_token – Het versleutelde OAuth-token dat gebruikt moet worden in de API-transactie.
  • token_type – Type token. In dit geval is het bearer-verificatie.
  • expires_in – Vervaltijd van token in milliseconden. De vervaltijd van een token is standaard een uur.
  • Scope – Omvang van de aan de consument verstrekte autorisatie.

Voorbeelden

Verzoek:

POST /oauth/token HTTP/1.1
grant_type= client_credentials&client_id=uw klant-id&client_secret=uw geheim

Antwoord:

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

Aanvraag voor interne klanten, compatibele klanten, eigen bovenliggende en onderliggende klanten en integratie-klanten van FedEx®:

POST /oauth/token HTTP/1.1
grant_type= csp_credentials&client_id=klant-id&client_secret= klant geheim&child_key=onderliggende sleutel&child_secret=onderliggend geheim

Antwoord:

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

Aanvraag voor FedEx® eigen bovenliggende en onderliggende klanten:

POST /oauth/token HTTP/1.1
grant_type= client_pc_credentials&client_id=klant-id&client_secret= klantgeheim&child_key=onderliggende sleutel&child_secret=onderliggend geheim

Antwoord:

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

Opmerking: Het toegangstoken verloopt na een uur. Het kan opnieuw worden gegenereerd met behulp van een POST-verzoek naar het oauth/token-eindpunt.

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