Skip to main content

Shell Authentication 1.0.1

This API enables an application to authenticate with a time-sensitive access token as part of the OAuth Authorisation flow.

Obțineți actualizări de stare, întreținere și versiune despre acest API.

Ghid rapid pentru autentificarea Shell

Introducere

API-ul de autentificare Shell permite aplicațiilor partenerilor să se autentifice la API Gateway folosind fluxul de acreditări client OAuth 2.0. Această API furnizează tokenuri de acces cu durată limitată care autorizează solicitările către API-urile Shell, asigurând o comunicare securizată între aplicația dvs. și serviciile Shell.

Avantaj Descriere
Acces securizat Standardul OAuth 2.0 cu tokenuri cu durată limitată
Integrare simplă Un singur punct final pentru generarea tokenurilor
Mediile flexibile Suport atât pentru mediile de testare, cât și pentru cele de producție

Autentificare

Notă privind migrarea

Această API oferă atât versiunea v1, cât și versiunea v2 a punctului final pentru tokenul OAuth. Versiunea 1 este învechită și va fi eliminată într-o viitoare fereastră de actualizare. Noile integrări ar trebui să utilizeze v2, iar utilizatorii existenți ar trebui să migreze la v2 cât mai curând posibil. Diferențele principale se regăsesc în formatul răspunsului: v2 utilizează denumirile standard ale câmpurilor OAuth (expires_in în loc de expires_in(seconds) și Bearer în loc de BearerToken).

Fluxul de autorizare

  1. Solicitați ID-ul clientului și cheia secretă

Contactați echipa API Shell pentru a solicita acces la autentificarea OAuth. Echipa API Shell vă va furniza un ID de client și o cheie secretă.

  1. Solicitați tokenul Bearer

Odată ce ați obținut datele de autentificare, efectuați o solicitare către punctul final pentru tokenul OAuth al API-ului de autentificare Shell folosind datele de autentificare.

Exemplu de solicitare:

curl --location --request POST 'https://api-test.shell.com/v2/oauth/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'client_id=**************' \
--data-urlencode 'client_secret=**************' \
--data-urlencode 'grant_type=client_credentials'

Veți primi un token Bearer în răspuns:

{
   "access_token": "**************",
   "expires_in": "899",
   "token_type": "Bearer"
}

Notă: Timpul de expirare al tokenului Bearer este exprimat în secunde.

  1. Autorizarea cererilor API

Când apelați API-urile Shell, includeți următoarele în antetul cererii.

Authorization: Bearer access_token

URL-uri de bază

Mediu URL
Test https://api-test.shell.com
Producție https://api.shell.com

Integrare de bază

1. Generare token OAuth

Descriere: Solicitați un token de acces OAuth utilizând datele de autentificare ale clientului. API-ul returnează un token Bearer cu durată limitată, care trebuie inclus în antetul „Authorization” al tuturor solicitărilor API ulterioare. Din motive de securitate, se utilizează metoda POST în locul metodei GET pentru a preveni stocarea în cache.

Cale: POST /v2/oauth/token

Exemplu de cerere

curl --location --request POST 'https://api-test.shell.com/v2/oauth/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'client_id=twuwywTYUHAH6AHHJ' \
--data-urlencode 'client_secret=yuahaYThdvdowoUUU7wjsjMM' \
--data-urlencode 'grant_type=client_credentials'

Parametri de solicitare

Parametru Tip Obligatoriu Descriere
client_id șir de caractere Da ID-ul clientului furnizat de Shell
client_secret șir de caractere Da Secretul clientului furnizat de Shell
grant_type șir de caractere Da Valoarea tipului de autorizare pentru acces (utilizați „client_credentials”)

Exemplu de răspuns

{
  "access_token": "NiE3gzPNVFpwYYMyyWu6mGFYtKN5",
  "expires_in": "899",
  "token_type": "Bearer"
}

Parametrii răspunsului

Parametru Tip Descriere
access_token șir Token de acces generat, destinat utilizării în solicitările API
expires_in șir de caractere Durata de expirare în secunde
token_type șir de caractere Tipul tokenului (Bearer)

Gestionarea erorilor

API-ul utilizează coduri de stare HTTP standard. În cazul unei erori, vor fi furnizate detalii suplimentare în corpul răspunsului.

Cod de eroare Descriere Soluție
400 Cerere incorectă - Cererea conține sintaxă incorectă sau nu poate fi procesată Verificați dacă toți parametrii necesari sunt incluși și formatați corespunzător
401 ID client nevalid - Lipsește antetul de autorizare sau datele de autentificare sunt nevalide Verificați dacă client_id și client_secret sunt corecte și codificate corespunzător
403 Acces interzis - Clientul nu are drepturi de acces Contactați echipa Shell API pentru a vă verifica permisiunile de acces
404 Nu a fost găsit - Imposibil de identificat proxy-ul pentru URL-ul solicitat Verificați dacă URL-ul punctului final este corect pentru mediul dvs.
405 Metodă nepermisă - Metoda HTTP nu este acceptată pentru această resursă Asigurați-vă că utilizați metoda POST pentru punctul final al tokenului
500 Eroare internă a serverului - Execuția a eșuat pe server Reîncercați solicitarea; contactați serviciul de asistență Shell dacă problema persistă

Despre noi

Portalul pentru dezvoltatori Shell sprijină partenerii în procesul de integrare cu API-urile Shell și în transformarea ideilor în soluții gata de punere în producție.

Logo Shell

Persoană de contact

Conectați-vă la contul dvs.

Întreabă Asistentul AI despre API-urile Shell și produsele API