Referencja
Błędy API i kody błędów
Błędy używają kodów statusu HTTP i zawsze mają to samo ciało JSON. param nazywa pole, gdy jedno pole jest przyczyną. Każda odpowiedź ma nagłówek X-Request-Id: zacytuj go w zgłoszeniu do pomocy technicznej.
{
"error": {
"code": "text_too_long",
"message": "The text is longer than 10 segments (1,530 GSM-7 or 670 UCS-2 characters).",
"param": "text",
"doc_url": "https://bulksmsapi.cc/en/docs/errors#text_too_long"
}
}Kody
| code | HTTP | Przyczyna | Pieniądze |
|---|---|---|---|
| invalid_json | 400 | Treść nie jest obiektem JSON lub Content-Type nie jest application/json. | Popraw treść. Nic nie zostało obciążone. |
| invalid_request | 400 | Brakuje pola lub ma ono niewłaściwy typ; parametr to wskazuje. | Popraw pole. Nic nie zostało obciążone. |
| invalid_number | 400 | Żaden numer w żądaniu nie może być odczytany jako E.164 (+ i 7 do 15 cyfr). | Sprawdź numery. Nic nie zostało obciążone. |
| unsupported_country | 400 / 404 | Żaden kraj z cennikiem nie pasuje do numerów lub GET /v1/pricing/{country} ma nieznany kod. | Sprawdź listę krajów. Nic nie zostało obciążone. |
| text_too_long | 400 | Tekst wymaga więcej niż 10 segmentów. | Skróć tekst. Nic nie zostało obciążone. |
| too_many_recipients | 400 | Więcej niż 10 000 odbiorców w jednym żądaniu. | Podziel listę. Nic nie zostało obciążone. |
| schedule_out_of_range | 400 | send_at nie jest prawidłowym czasem między 2 minutami a 45 dniami od teraz. | Wybierz inny czas. Nic nie zostało obciążone. |
| suppressed | 400 | Każdy numer w żądaniu znajduje się na Twojej liście 'nie wysyłaj' (Ustawienia w konsoli). | Nic nie zostało wysłane ani obciążone. |
| unauthorized | 401 | Nagłówek Authorization brakuje, jest nieprawidłowo sformułowany lub klucz został unieważniony. | Wyślij aktywny klucz. Nic nie zostało obciążone. |
| top_up_required | 402 | Saldo jest niższe niż koszt żądania; wiadomość podaje obie kwoty. | Doładuj saldo i wyślij ponownie. Nic nie zostało obciążone. |
| not_found | 404 | Id nie istnieje w tym koncie lub endpoint nie istnieje. | Sprawdź id i ścieżkę. |
| idempotency_conflict | 409 | Idempotency-Key został użyty z inną treścią żądania w ciągu ostatnich 24 godzin. | Użyj nowego klucza dla nowego żądania. |
| not_cancelable | 409 | Tylko zaplanowaną partię można anulować; ta już się rozpoczęła lub zakończyła. | Nic się nie zmieniło. |
| rate_limited | 429 | Klucz wykonał więcej niż 600 żądań w ciągu ostatnich 60 sekund. | Poczekaj Retry-After sekund. Nic nie zostało obciążone. |
| server_error | 500 | Coś nie zadziałało po naszej stronie. | Ponów próbę z tym samym Idempotency-Key. |
Ponawianie
- Błędy 4xx inne niż 429 wymagają zmiany żądania; wysłanie tego samego żądania ponownie zwróci ten sam błąd.
- W przypadku 429, poczekaj liczbę sekund podaną w Retry-After.
- W przypadku 5xx lub przekroczenia limitu czasu sieci, ponów próbę z tym samym Idempotency-Key: jeśli pierwsze żądanie zostało zaakceptowane, otrzymasz jego odpowiedź zamiast ponownego wysłania.