Fedex Logo
Developer Portal

API Authorization

Introduzione

Le API FedEx supportano il metodo di autenticazione OAuth 2.0 (bearer token) per autorizzare le vostre richieste API con le risorse FedEx. Questo token di accesso OAuth deve essere rigenerato ogni 60 minuti e fornito con ogni transazione API per autenticare e autorizzare il vostro accesso alle risorse FedEx.

Dettagli API autorizzazione

Questa API consente di autorizzare le richieste API ed è necessaria per autenticare le risorse FedEx. La sezione seguente descrive i prerequisiti per l'API:

Al momento della registrazione sul FedEx Developer Portal, FedEx fornisce una combinazione di Client ID (Chiave API) e Client Secret (Chiave Segreta) per autenticare le richieste API per il vostro progetto. Ogni progetto nella vostra organizzazione è associato a una combinazione di Client ID e Client Secret, che prende il nome di credenziali API.

Nota: i clienti (Internal, Compatible, Proprietary Parent Child e Integrator) possono contattare il referente Commerciale FedEx per ottenere chiavi API e chiavi segrete.

Per fornire un ulteriore livello di sicurezza, i clienti FedEx® (Internal, Compatible, Proprietary Parent Child e Integrator) possono inviare la chiave secondaria (Customer Secret) e la chiave segreta secondaria (password cliente) oltre alle chiavi API e alle chiavi Segrete per la creazione di un token OAuth. Questo token viene utilizzato in ogni richiesta API per l'autenticazione.

Potete ricreare la Chiave Segreta dimenticata dalla pagina dei Progetti sul FedEx Developer Portal.

Nota: la creazione di nuove chiavi comporterà una modifica di codice nella vostra applicazione.

Informazioni importanti contenute in questo documento:

  • Chiave Client come Chiave API
  • Client Secret come Chiave Segreta
  • Chiave secondaria come Chiave Cliente
  • Chiave segreta secondaria come Password Cliente

Le credenziali API sono utilizzate ai seguenti scopi:

  • Identificano il progetto che effettua una richiesta alle API.
  • Autorizzano l'accesso alle API abilitate nel vostro progetto.

Come ottenere credenziali API

Le credenziali vengono create sulla base dei dati inseriti nel FedEx Developer Portal:

  • Client ID – La Chiave API (Client ID) viene generata una volta creato un progetto sul FedEx Developer Portal. Potete anche visualizzare la Chiave API associata al progetto alla pagina Panoramica progetto.
  • Client Secret – Visualizzerete la Chiave Segreta (Client Secret) alla pagina di conferma una volta creato un progetto sul FedEx Developer Portal. Se necessario, la Chiave Segreta può essere rigenerata alla pagina della Panoramica progetto.

Nota: i clienti FedEx® (Internal, Compatible o secondari) devono inviare la Chiave secondaria (Customer Secret) e la Chiave segreta secondaria (password cliente) oltre alla Chiave API e alla Chiave Segreta per la creazione del token OAuth. Fate riferimento all'API registrazione credenziali per informazioni su come ottenere la chiave secondaria e la chiave segreta secondaria.

Come funziona l'API autorizzazione

Autorizzazione API

Dopo aver messo in sicurezza le credenziali API sul FedEx Developer Portal, l'endpoint OAuth viene usato per ottenere un token di accesso da utilizzare come credenziali a ogni transazione API.

Di seguito sono riportate le informazioni di input necessarie associate alla richiesta OAuth:

  • grant_type – Tipo di cliente. (Valori validi: client_credentials, csp_credentials, client_pc_credentials)
  • client_id – Si riferisce alla Chiave API del Progetto.
  • client_secret – Si riferisce alla Chiave Segreta API del Progetto.

I clienti FedEx® Internal, Compatible, Proprietary Parent Child e Integrator devono inviare i seguenti input aggiuntivi:

  • child_id – Chiave del cliente restituita tramite la richiesta dell'API registrazione credenziali.
  • child_secret – Password del cliente restituita tramite la richiesta dell'API registrazione credenziali

Il risultato di questa richiesta dovrebbe restituire quanto indicato di seguito:

  • access_token – Il token OAuth crittografato da utilizzare nella transazione API.
  • token_type – Tipo di token. In questo caso, si tratta di autenticazione al portatore.
  • expires_in – È il tempo di scadenza del token in millisecondi. Un'ora è il tempo di scadenza standard del token.
  • Scope – Scopo dell'autorizzazione fornita al consumatore.

Esempi

Richiesta:

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

Risposta:

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

Richiesta per clienti FedEx® Internal, Compatible e Integrator:

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

Risposta:

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

Richiesta per clienti 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

Risposta:

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

Nota: il token di accesso scade dopo un'ora, può essere rigenerato utilizzando una richiesta POST all'endpoint 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