Skip to main content

B2B Mobility Toll Transaction Data 1.0.0

Uzyskaj aktualizacje dotyczące zmiany statusu, konserwacji i wersji tego API.

Shell B2B Mobility – API danych transakcji opłat drogowych – Przewodnik szybkiego startu

Wersja API: 1.0.0 | Uwierzytelnianie: OAuth 2.0 | Status: Wersja produkcyjna

Przegląd

Interfejs API danych transakcji opłat drogowych Shell B2B Mobility to interfejs oparty na architekturze REST, który zapewnia kompleksowy dostęp do rejestrów transakcji opłat drogowych i powiązanych danych dla klientów usług mobilnościowych Shell. Interfejs ten umożliwia programistom programowe pobieranie, filtrowanie i analizowanie danych dotyczących transakcji opłat drogowych za pomocą kodu w celu uzgodnienia stanu konta, weryfikacji rozliczeń, zarządzania wydatkami oraz spełnienia wymogów zgodności.

Najważniejsze funkcje

  • Pobieranie danych dotyczących transakcji opłat drogowych według numeru konta
  • Filtrowanie transakcji według przedziału dat (data początkowa i końcowa)
  • Wyszukiwanie według statusu faktury i numeru rejestracyjnego pojazdu (VRN)
  • Zaawansowane opcje sortowania według wielu pól
  • Obsługa paginacji dla dużych zbiorów danych
  • Elastyczne filtrowanie pól w celu optymalizacji zawartości odpowiedzi
  • Kompleksowe szczegóły opłat drogowych, w tym punkty wjazdu/wyjazdu
  • Obsługa wielu sieci opłat drogowych i operatorów

Uwierzytelnianie

OAuth 2.0 (standardowa metoda uwierzytelniania)

Interfejs API danych transakcji opłat drogowych Shell wykorzystuje przepływ poświadczeń klienta OAuth 2.0 do bezpiecznego uwierzytelniania.

OAuth 2.0

Krok 1: Uzyskaj token dostępu

Poproś o token dostępu z punktu końcowego tokenów OAuth:

POST /oauth/token
Content-Type: application/x-www-form-urlencoded

grant_type=client_credentials&client_id=twój-identyfikator-klienta&client_secret=twój-sekret-klienta

Krok 2: Użyj tokenu dostępu w żądaniach API

Authorization: Bearer 
Content-Type: application/json
RequestId: eb621f45-a543-4d9a-a934-2f223b263c42

Zarządzanie tokenami

Najlepsze praktyki dotyczące zarządzania tokenami:

  • Tokeny dostępu mają ograniczony czas ważności (zazwyczaj 15 minut)
  • Wprowadź buforowanie tokenów, aby uniknąć niepotrzebnych żądań tokenów
  • Odśwież tokeny przed upływem terminu ważności, aby zapewnić nieprzerwaną obsługę
  • Nigdy nie udostępniaj swojego client_secret ani nie osadzaj go w kodzie po stronie klienta

Środowiska

API jest dostępne w dwóch środowiskach:

Środowisko Podstawowy adres URL Cel
Produkcyjne https://api.shell.com/toll-data/v1 Aktywne środowisko produkcyjne
Testowe (UAT) https://api-test.shell.com/toll-data/v1 Środowisko testowe i programistyczne

Adresy URL tokenów OAuth:

Środowisko Adres URL tokenu
Produkcyjne https://api.shell.com/v2/oauth/token
Testowe (UAT) https://api-test.shell.com/v2/oauth/token

Wskazówka: Zawsze testuj integrację w środowisku testowym, zanim przejdziesz do środowiska produkcyjnego.

Szybki start

1. Uzyskaj swoje poświadczenia OAuth

2. Uzyskaj token dostępu

Najpierw uzyskaj swój token dostępu OAuth:

Przykład cURL:

curl -X POST https://api-test.shell.com/v2/oauth/token \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=client_credentials&client_id=twój-identyfikator-klienta&client_secret=twój-sekret-klienta"

Odpowiedź:

{
  "access_token": "eyJhbGciOi*******5cCI6IkpXVCJ9...",
  "token_type": "Bearer",
  "expires_in": 899
}

3. Wykonaj swoje pierwsze żądanie API

Przykład: Wyszukiwanie transakcji opłat drogowych

Przykład użycia cURL:

curl -X POST https://api-test.shell.com/toll-data/v1/transactions/search \
  -H "Authorization: Bearer eyJhbGci******NiIsInR5cCI6IkpXVCJ9..." \
  -H "Content-Type: application/json" \
  -H "RequestId: eb621f45-a543-4d9a-a934-2f223b263c42" \
  -d '{
    "Filters": {
 "ColCoCode": 86,
 "PayerNumber": "NL20016398",
        "AccountNumber": "NL20027701",
 "Filter": "All",
 "FromDate": "2026-01-01",
 "ToDate": "2026-01-31"
    },
    "Page": 1,
    "PageSize": 10
}'

Przykładowa odpowiedź:

{
  "RequestId": "eb621f45-a543-4d9a-a934-2f223b263c42",
  "Status": "SUCCESS",
  "Page": 1,
  "TotalRecords": 150,
  "TotalPages": 15,
  "PageSize": 10,
  "Data": [
    {
      "NetworkDescription": "Societa Autostradali",
 "TollChargerCode": "410|610",
 "DelcoCode": "714",
 "DelcoName": "Shell Fleet Solutions Consorzio",
      "NetworkCode": "TLI",
 "Network": "euroShell Consortio",
 "PurchasedInCountry": "Włochy",
 "PurchasedInCountryCode": "IT",
      "CardNumber": "707737*******334272",
      "Identyfikator karty": 123456789,
 "Nazwa grupy kart": "Shell Fleet Solutions Consorzio",
 "Numer rejestracyjny pojazdu": "KN 00000",
      „CostCenter”: „100”,
 „SystemEntryDate”: „20260123”,
 „SystemEntryTime”: „13:14:25”,
      "TransactionDate": "20260120",
 "TransactionTime": "10:30:00",
 "PostingDate": "20260123",
      "Czas zaksięgowania": "00:00:00",
 "Numer płatnika": "NL20016398",
 "Numer konta": "NL20027701",
 "Nazwa konta": "Nazwa konta testowego",
      "StartDate": "20260120",
 "StartTime": "06:47:41",
      "EndDate": "20260120",
 "EndTime": "07:30:15",
 "TollGateEntry": "ROMA NORD",
 "TollGateExit": "BRENNERO",
      "DistanceDriven": "71,6",
 "RouteDescription": "ROMA NORD – BRENNERO",
 "TransactionType": "Opłata drogowa",
 "ProductCode": "14",
 "ProductDescription": "Opłata drogowa",
      "Kwota netto transakcji": "127,1",
 "Podatek od transakcji": "0,0",
 "Kwota brutto transakcji": "127,1",
      "TransactionCurrencyCode": "EUR",
 "TransactionStatus": "Raportowanie",
 "InvoiceNumber": "8600397548",
 "InvoiceDate": "20260125",
      "Status faktury": "Zafakturowano",
 "Metoda płatności": "Płatność z dołu",
 "Numer seryjny pojazdu": "00049000000836932426",
 „EmissionClass”: „Euro 6”,
 „ContractID”: „fb75eb53-46eb-450b-862e-6045002c3fa8”,
      "ShellTransactionID": "04176c5c-e7b2-49c8-bcb3-23d07ba583f2",
 "TollOperator": "Toll4Europe",
      "TollDomain": "Toll4Europe",
 "TariffRelevantInformation": "Klasa pojazdu: 2, Liczba osi: 2, Kategoria drogi: Autostrada",
 "AdditionalTransactionInfo": "Lokalizacja: 1",
 "TCInvoiceNumber": "12343343",
 "TCInvoiceDate": "20260123"
    }
  ]
}

Przewodnik po punktach końcowych API

Transakcje opłat drogowych

Punkt końcowy Metoda Opis
/toll-data/v1/transactions/search POST Pobieranie danych transakcji opłat drogowych z elastycznym filtrowaniem i paginacją

Typowe przypadki użycia:

  • Pobieranie transakcji opłat drogowych według przedziału czasowego
  • Filtrowanie według statusu faktury (Zafakturowane, Niefakturowane, Wszystkie)
  • Wyszukiwanie według numeru rejestracyjnego pojazdu (VRN)
  • Filtruj według grupy kart
  • Sortuj transakcje według wielu kryteriów
  • Wybierz konkretne pola, aby zoptymalizować rozmiar odpowiedzi

Typowe przypadki użycia

W tej sekcji przedstawiono powiązania między typowymi scenariuszami biznesowymi a wzorcami korzystania z API, co pomoże szybko określić, jak wykorzystać API do konkretnych potrzeb.

Przypadek użycia 1: Codzienne uzgadnianie transakcji opłat drogowych

Scenariusz: Musisz codziennie uzgadniać wszystkie transakcje opłat drogowych swojej floty dla celów księgowych.

Zalecane API: /toll-data/v1/transactions/search

Dlaczego ten interfejs API: Ten punkt końcowy zapewnia kompleksowe szczegóły transakcji opłat drogowych z elastycznym filtrowaniem według daty, obsługuje zarówno transakcje zafakturowane, jak i niezafakturowane oraz oferuje paginację dla dużych zbiorów danych. Idealny do codziennych procesów uzgadniania.

Kluczowe parametry:

  • FromDate oraz ToDate - Ustaw na datę wczorajszą w celu przeprowadzenia codziennego uzgadniania
  • Search.InvoiceStatus - Wybierz opcję „Wszystkie”, aby uwzględnić zarówno transakcje zafakturowane, jak i niezafakturowane
  • PageSize - Ustaw wartość 100, aby zapewnić wydajne pobieranie danych
  • Filtr - Użyj opcji „Wszystkie”, aby uzyskać pełne szczegóły transakcji

Przypadek użycia 2: Walidacja i weryfikacja faktury

Scenariusz: Otrzymałeś fakturę i musisz zweryfikować wszystkie szczegóły transakcji opłat drogowych oraz naliczone opłaty.

Zalecane API: /toll-data/v1/transactions/search

Dlaczego to API: API dostarcza szczegółowych informacji o transakcjach związanych z opłatami drogowymi, w tym numery faktur, daty, kwot oraz szczegółów dotyczących sieci opłat drogowych. Idealnie nadaje się do walidacji faktur, ponieważ odpowiada strukturze faktury.

Kluczowe parametry:

  • Search.InvoiceStatus - Ustaw na „Invoiced”, aby pobrać wyłącznie transakcje zafakturowane
  • FromDate oraz ToDate – ustaw na daty okresu rozliczeniowego
  • Filtr – Określ pola, takie jak „InvoiceNumber, InvoiceDate, TransactionGrossAmount”, w celu ukierunkowanej walidacji

Przypadek użycia 3: Analiza wykorzystania opłat drogowych przez pojazdy floty

Scenariusz: Konieczne jest przeanalizowanie wzorców korzystania z opłat drogowych przez konkretne pojazdy w flocie w celu optymalizacji tras i obniżenia kosztów opłat drogowych.

Zalecane API: /toll-data/v1/transactions/search

Dlaczego ten interfejs API: Interfejs API umożliwia filtrowanie według numeru rejestracyjnego pojazdu (VRN) i dostarcza szczegółowych informacji o trasie, w tym punktów wjazdu/wyjazdu, przejechanej odległości oraz opłat za przejazd. Idealny do analizy na poziomie pojazdu.

Kluczowe parametry:

  • Search.VehicleRegistrationNumber — Określnumer rejestracyjny pojazdu (VRN) do analizy
  • FromDate i ToDate – Ustaw okres analizy (np.g., ostatnie 30 dni)
  • SortOption – Użyj 1 (data transakcji w porządku rosnącym) do analizy chronologicznej
  • Filtr – Uwzględnij pola takie jak „RouteDescription, DistanceDriven, TollGateEntry, TollGateExit, TransactionGrossAmount”

Przypadek użycia 4: Śledzenie wydatków według grup kart

Scenariusz: Zarządzasz wieloma grupami kart i musisz śledzić wydatki związane z opłatami drogowymi w podziale na grupy kart w celu alokacji budżetu i raportowania według ośrodków kosztów.

Zalecane API: /toll-data/v1/transactions/search

Dlaczego to API: API obsługuje filtrowanie według grupy kart i zawiera informacje o ośrodkach kosztowych, dzięki czemu idealnie nadaje się do śledzenia wydatków i raportowania na poziomie grupy kart.

Kluczowe parametry:

  • Search.CardGroup – Określ nazwę grupy kart grupy kart lub użyj opcji „Wszystkie”, aby wyświetlić wszystkie grupy
  • FromDate oraz ToDate – Ustaw na okres sprawozdawczy
  • Filtr - Uwzględnij „CardGroupName, CostCenter, TransactionGrossAmount, TransactionNetAmount, TransactionTax”
  • Opcja sortowania - Użyj opcji 3 (kwota transakcji rosnąco) do analizy wydatków

Przypadek użycia 5: Raportowanie opłat za przejazd dla wielu kont

Scenariusz: Zarządzasz wieloma kontami i musisz wygenerować skonsolidowane raporty opłat za przejazd obejmujące wszystkie konta.

Zalecane API: /toll-data/v1/transactions/search

Dlaczego to API: API umożliwia wyszukiwanie danych z wielu kont (zalecane 2–5) w ramach jednego żądania, co zmniejsza liczbę wywołań API i poprawia wydajność w scenariuszach z wieloma kontami.

Kluczowe parametry:

  • AccountNumber – Podaj(maksymalnie 2–5 dla optymalnej wydajności)
  • FromDate oraz ToDate – ustaw na okres sprawozdawczy
  • PageSize - Aby uzyskać lepszą wydajność, należy używać większych rozmiarów stron (np. 100–500)

Przypadek użycia 6: Monitorowanie transakcji bez faktury

Scenariusz: Chcesz monitorować transakcje opłat drogowych bez faktury, aby prognozować nadchodzące faktury i zarządzać przepływem środków pieniężnych.

Zalecane API: /toll-data/v1/transactions/search

Dlaczego ten interfejs API: Interfejs API umożliwia filtrowanie według statusu faktury, co ułatwia identyfikację transakcji niezafakturowanych i oszacowanie przyszłych opłat.

Kluczowe parametry:

  • Search.InvoiceStatus – ustaw na „Uninvoiced” dla opłat oczekujących
  • FromDate oraz ToDate – ustaw na bieżący okres rozliczeniowy
  • Filtr – Uwzględnij „TransactionDate, TransactionGrossAmount, AccountNumber, VehicleRegistration”

Przypadek użycia 7: Analiza wykorzystania sieci płatnych dróg

Scenariusz: Musisz przeanalizować, z których sieci płatnych dróg i usług których operatorów Twoja flota korzysta najczęściej, aby wynegocjować lepsze stawki lub zoptymalizować trasy.

Zalecane API: /toll-data/v1/transactions/search

Dlaczego to API: API dostarcza szczegółowych informacji o sieciach płatnych, w tym opis sieci, operatora poboru opłat, kod poboru opłat oraz kod sieci, co idealnie nadaje się do analizy wykorzystania sieci.

Kluczowe parametry:

  • FromDate oraz ToDate – Ustawić na okres analizy (np. kwartalny)
  • Filtr - Uwzględnij „NetworkDescription, TollOperator, TollChargerCode, Network, TransactionGrossAmount”
  • Rozmiar strony - Użyj większej liczby wyników na stronie, aby uzyskać kompleksowe dane

Przykłady zastosowań

Przykład 1: Wyszukiwanie transakcji opłat drogowych według konta i zakresu dat

Żądanie:

POST /toll-data/v1/transactions/search

{
  "Filters": {
    "ColCoCode": 86,
    "PayerNumber": "NL20016398",
    "AccountNumber": "NL20027701",
    "Filter": "All",
    "FromDate": "2026-01-01",
    "ToDate": "2026-01-31"
  },
  "Page": 1,
  "PageSize": 10
}

Odpowiedź:

{
  "Identyfikator żądania": "eb621f45-a543-4d9a-a934-2f223b263c42",
  "Status": "SUCCESS",
  "Strona": 1,
  "TotalRecords": 150,
  "TotalPages": 15,
  "PageSize": 10,
  "Data": [
    {
 "NetworkDescription": "Societa Autostradali",
 "TollChargerCode": "410|610",
 "DelcoCode": "714",
      "DelcoName": "Shell Fleet Solutions Consorzio",
 "NetworkCode": "TLI",
 "Network": "euroShell Consortio",
      „PurchasedInCountry”: „Włochy”,
 „PurchasedInCountryCode”: „IT”,
 „CardNumber”: „707737*******334272”,
 „Identyfikator karty”: 123456789,
 „Nazwa grupy kart”: „Shell Fleet Solutions Consorzio”,
 „Numer rejestracyjny pojazdu”: „KN 00000”,
      "Centrum kosztów": "100",
 "Data wprowadzenia do systemu": "20260123",
 "Czas wprowadzenia do systemu": "13:14:25",
      "TransactionDate": "20260120",
 "TransactionTime": "10:30:00",
 "PostingDate": "20260123",
 "PostingTime": "00:00:00",
 "PayerNumber": "NL20016398",
 "AccountNumber": "NL20027701",
 "AccountName": "Nazwa konta testowego",
      "DataPoczątku": "20260120",
 "CzasPoczątku": "06:47:41",
 "DataZakończenia": "20260120",
 "CzasZakończenia": "07:30:15",
      "TollGateEntry": "ROMA NORD",
 "TollGateExit": "BRENNERO",
 "DistanceDriven": "71,6",
 "RouteDescription": "ROMA NORD – BRENNERO",
      "TransactionType": "Opłata drogowa",
 "ProductCode": "14",
 "ProductDescription": "Opłata drogowa",
 "TransactionNetAmount": "127,1",
      "Podatek od transakcji": "0,0",
 "Kwota brutto transakcji": "127,1",
 "Kod waluty transakcji": "EUR",
 "Status transakcji": "Raportowanie",
 "Numer faktury": „8600397548”,
 „InvoiceDate”: „20260125”,
      "Status faktury": "Zafakturowana",
 "Metoda płatności": "Płatność po wykonaniu usługi",
 "Numer seryjny OBU": "00049000000836932426",
 "Klasa emisji": "Euro 6",
      "ID_umowy": "fb75eb53-46eb-450b-862e-6045002c3fa8",
      "ShellTransactionID": "04176c5c-e7b2-49c8-bcb3-23d07ba583f2",
 "TollOperator": "Toll4Europe",
 "TollDomain": "Toll4Europe",
 "TariffRelevantInformation": "Klasa pojazdu: 2, Liczba osi: 2, Kategoria drogi: Autostrada",
 "AdditionalTransactionInfo": "Lokalizacja: 1",
 "TCInvoiceNumber": "12343343",
 "TCInvoiceDate": "20260123"
    }
  ]
}

Przykład 2: Filtrowanie transakcji według numeru rejestracyjnego pojazdu (VRN)

Żądanie:

POST /toll-data/v1/transactions/search

{
  "Filters": {
    "ColCoCode": 86,
    "PayerNumber": "NL20016398",
    "AccountNumber": "NL20027701",
    "Filter": "VehicleRegistration, RouteDescription, TransactionGrossAmount, TransactionDate",
    "FromDate": "2026-01-01",
    "ToDate": "2026-03-31",
    "Search": {
 "VehicleRegistrationNumber": "KN 00000",
 "InvoiceStatus": "All"
    }
  },
  "Strona": 1,
  „PageSize”: 50
}

Odpowiedź:

{
  „RequestId”: „9d2dee33-7803-485a-a2b1-2c7538e597ee”,
  "Status": "SUCCESS",
  "Page": 1,
  "TotalRecords": 45,
  "TotalPages": 1,
  "PageSize": 50,
  "Data": [
    {
 "VehicleRegistration": "KN 00000",
 "RouteDescription": "ROMA NORD - BRENNERO",
      "TransactionGrossAmount": "127,1",
 "TransactionDate": "20260120"
    },
    {
 "VehicleRegistration": "KN 00000",
      "RouteDescription": "MILANO EST - VERONA SUD",
 "TransactionGrossAmount": "85,4",
 "TransactionDate": "20260125"
    }
  ]
}

Przykład 3: Wyszukiwanie według grupy kart

Żądanie:

POST /toll-data/v1/transactions/search

{
  "Filters": {
    "ColCoCode": 86,
    "PayerNumber": "NL20016398",
    "AccountNumber": "NL20027701",
    "Filter": "CardGroupName, VehicleRegistration, TransactionGrossAmount, TransactionDate",
    "FromDate": "2026-01-01",
    "ToDate": "2026-01-31",
    "Search": {
 "CardGroup": "Shell Fleet Solutions Consorzio",
 "InvoiceStatus": "All"
    }
  },
  "Page": 1,
  "PageSize": 30
}

Odpowiedź:

{
  "Identyfikator żądania": "5f1bded6-416d-4478-ab7f-33905d7b5d4b",
  "Status": "SUCCESS",
  "Strona": 1,
  "TotalRecords": 87,
  "TotalPages": 3,
  "PageSize": 30,
  "Data": [
    {
 "CardGroupName": "Shell Fleet Solutions Consorzio",
 "VehicleRegistration": "KN 00000",
 "TransactionGrossAmount": "127.1",
      "TransactionDate": "20260120"
    },
    {
 "CardGroupName": "Shell Fleet Solutions Consorzio",
      "VehicleRegistration": "LM 11111",
 "TransactionGrossAmount": "95,8",
 "TransactionDate": "20260122"
    }
  ]
}

Przykład 4: Wiele kont z określonymi polami

Żądanie:

POST /toll-data/v1/transactions/search

{
  "Filters": {
    "ColCoCode": 86,
    "PayerNumber": "NL20016398",
    "AccountNumber": "NL20027701, NL20027702",
    "Filter": "AccountNumber, AccountName, TransactionDate, TransactionGrossAmount, VehicleRegistration",
    "FromDate": "2026-01-01",
    "ToDate": "2026-01-31"
  },
  "Page": 1,
  "PageSize": 100
}

Odpowiedź:

{
  "Identyfikator żądania": "eb621f45-a543-4d9a-a934-2f223b263c42",
  "Status": "SUCCESS",
  "Page": 1,
  "TotalRecords": 245,
  "TotalPages": 3,
  "PageSize": 100,
  "Data": [
    {
 "AccountNumber": "NL20027701",
 "AccountName": "Nazwa konta testowego",
 "TransactionDate": "20260120",
      "KwotaBruttoTransakcji": "127,1",
 "NumerRejestracyjnyPojazdu": "KN 00000"
    },
    {
 "NumerKonta": "NL20027702",
      "Nazwa konta": "Nazwa drugiego konta",
 "Data transakcji": "20260121",
 "Kwota brutto transakcji": "98,5",
 "Numer rejestracyjny pojazdu": "PQ 22222"
    }
  ]
}

Obsługa błędów

Typowe kody błędów

Status HTTP Kod błędu Opis Rozwiązanie
200 Nie dotyczy Status: SUCCESS Nie dotyczy
400 E0001 Błąd walidacji Sprawdź parametry żądania, upewnij się, że pola obowiązkowe zostały wypełnione i są prawidłowe
401 E0003 Brak uprawnień Sprawdź, czy token OAuth jest ważny i nie wygasł
404 E0005 Nie znaleziono Sprawdź, czy adres URL punktu końcowego i zasób istnieją
500 E0002 Nieznany błąd / Wewnętrzny błąd serwera Skontaktuj się z pomocą techniczną, podając identyfikator żądania (RequestId)
503 E0012 Usługa niedostępna / Błąd połączenia Spróbuj ponownie po pewnym czasie; jeśli problem nadal występuje, skontaktuj się z pomocą techniczną

Przykład odpowiedzi z błędem

Błąd walidacji (E0001):

{
  "RequestId": "eb621f45-a543-4d9a-a934-2f223b263c42",
  "Status": "FAILED",
  "Errors": [
    {
 "Code": "E0001",
 "Title": "Błąd walidacji",
 "Detail": "Brakujące / nieprawidłowe wartości dla: ColCoCode",
      "AdditionalInfo": null
    }
  ]
}

Błąd braku uprawnień (E0003):

{
  "RequestId": "eb621f45-a543-4d9a-a934-2f223b263c42",
  "Status": "FAILED",
  "Errors": [
    {
 "Code": "E0003",
 "Title": "Brak uprawnień",
 "Detail": "Podane dane uwierzytelniające są nieprawidłowe lub użytkownik nie ma uprawnień do wykonania tej operacji",
 "AdditionalInfo": null
    }
  ]
}

Najlepsze praktyki

1. Korzystaj z uwierzytelniania OAuth 2.0

WAŻNE: Zawsze korzystaj z uwierzytelniania OAuth 2.0. Wprowadź odpowiednie zarządzanie tokenami:

  • Buforuj tokeny dostępu i wykorzystuj je ponownie do momentu wygaśnięcia
  • Odświeżaj tokeny przed ich wygaśnięciem (zalecane 60 sekund przed)
  • Bezpieczne przechowywanie poświadczeń klienta (użyj zmiennych środowiskowych lub menedżera sekretów)
  • Nigdy nie rejestruj ani nie ujawniaj tokenów dostępu w kodzie po stronie klienta

2. Zawsze dołączaj RequestId

Zawsze dołączaj unikalny identyfikator RequestId (w formacie UUID) w nagłówku, aby zapewnić śledzenie od początku do końca. Ma to kluczowe znaczenie dla rozwiązywania problemów i wsparcia technicznego.

3. Wprowadź obsługę błędów

Wprowadź solidną obsługę błędów:

  • Sprawdzaj pole Status w każdej odpowiedzi
  • Rejestruj identyfikator RequestId na potrzeby rozwiązywania problemów
  • Zaimplementuj logikę ponownych prób w przypadku błędów przejściowych (503)
  • Obsługa błędów walidacji (E0001) poprzez sprawdzanie parametrów wejściowych

Wsparcie i zasoby

Pomoc techniczna

Dokumentacja

Pomoc

Kontaktując się z pomocą techniczną, podaj:

  1. swój identyfikator client_id (nigdy nie udostępniaj swojego client_secret ani tokenów dostępu)
  2. identyfikator żądania (RequestId) z odpowiedzi API
  3. Sygnatura czasowa żądania
  4. Środowisko (produkcyjne/testowe)
  5. Otrzymane kody błędów i komunikaty

Ostatnia aktualizacja: 4 sierpnia 2026 r.
Wersja dokumentu: 1.0
Wersja API: 1.0.0

O nas

Portal dla programistów Shell wspiera partnerów w procesie wdrażania interfejsów API firmy Shell oraz przekształcaniu pomysłów w rozwiązania gotowe do wdrożenia.

Logo Shell

Zaloguj się do swojego konta

Zapytaj asystenta AI o interfejsy API firmy Shell i produkty API