Standaryzacja odpowiedzi na błędy (wersja zapoznawcza)

Ważna

[Ten artykuł to dokumentacja wstępna, która może ulec zmianie].

Odpowiedzi na błędy należy standaryzować, aby zapewnić, że komunikaty o błędach są spójne i łatwe do zrozumienia. W poniższej tabeli wymieniono schemat obiektu błędu, który jest oczekiwany w treści odpowiedzi.

Nazwa Typ danych Wymagania Description
errorCode String Yes Krótka i łatwa do zidentyfikowania kategoria błędów.
errorMessage String No Przyjazny dla deweloperów komunikat zawierający więcej szczegółów na temat błędu.
activityId (identyfikator aktywności) String No Unikalny identyfikator żądania.
details Object No

Więcej szczegółów dotyczących błędu. Zawartość może się różnić w zależności od typu błędu.

Poniższy przykład pokazuje przypadek, w którym użytkownik nie ma odpowiednich uprawnień.

{
"resourceType": "koperta",
"resourceId": "<envelopeId>"
}

W poniższej tabeli przedstawiono kilka scenariuszy i oczekiwane kody błędów:

Scenario Kod błędu Kod stanu HTTP
System zarządzania relacjami z klientami (CRM), z którym użytkownik jest połączony, różni się od systemu określonego w danych wejściowych. NIEPRAWIDŁOWE_POŁĄCZENIE_CRM 400
Nie znaleziono systemu CRM lub został on usunięty. RECORD_NOT_FOUND 404
Użytkownik nie jest uwierzytelniony. (Ten scenariusz zwykle występuje po wygaśnięciu tokenu). Podano niewłaściwy token 401
Użytkownik nie ma uprawnień do wykonywania akcji. (Innymi słowy, użytkownik ma niewystarczające uprawnienia). NIEWYSTARCZAJĄCE_UPRAWNIENIA 403
Do łącznika wysłano zbyt wiele żądań. REQUEST_THROTTLED 429
Wystąpił błąd nieobsługiwany usługi. BŁĄD WEWNĘTRZNY SERWERA 500

Rozszerzanie agenta sprzedaży przy użyciu aplikacji partnerskich
Kompilowanie rozszerzeń dla agenta sprzedaży