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
- Skontaktuj się z z działem pomocy technicznej Shell
- Poproś o dane uwierzytelniające OAuth 2.0 (client_id i client_secret)
- Zapoznaj się z warunki korzystania z usługi
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:
FromDateorazToDate- Ustaw na datę wczorajszą w celu przeprowadzenia codziennego uzgadnianiaSearch.InvoiceStatus- Wybierz opcję „Wszystkie”, aby uwzględnić zarówno transakcje zafakturowane, jak i niezafakturowanePageSize- Ustaw wartość 100, aby zapewnić wydajne pobieranie danychFiltr- 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 zafakturowaneFromDateorazToDate– ustaw na daty okresu rozliczeniowegoFiltr– 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 analizyFromDateiToDate– Ustaw okres analizy (np.g., ostatnie 30 dni)SortOption– Użyj 1 (data transakcji w porządku rosnącym) do analizy chronologicznejFiltr– 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 grupyFromDateorazToDate– Ustaw na okres sprawozdawczyFiltr- 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)FromDateorazToDate– ustaw na okres sprawozdawczyPageSize- 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ącychFromDateorazToDate– ustaw na bieżący okres rozliczeniowyFiltr– 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:
FromDateorazToDate– 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
- Pomoc techniczna: Pomoc techniczna Shell
- E-mail: api@shell.com
Dokumentacja
Pomoc
Kontaktując się z pomocą techniczną, podaj:
- swój identyfikator client_id (nigdy nie udostępniaj swojego client_secret ani tokenów dostępu)
- identyfikator żądania (RequestId) z odpowiedzi API
- Sygnatura czasowa żądania
- Środowisko (produkcyjne/testowe)
- Otrzymane kody błędów i komunikaty
Ostatnia aktualizacja: 4 sierpnia 2026 r.
Wersja dokumentu: 1.0
Wersja API: 1.0.0
