DialerBee APIv1 · 1.0.0-rc6

Errors

Every error is an RFC 9457 problem document, sent as application/problem+json:

{
  "type": "https://docs.dialerbee.com/errors/insufficient-scope",
  "title": "Not permitted",
  "status": 403,
  "detail": "The API client does not hold the scope this operation requires.",
  "instance": "urn:dialerbee:request:req_01K6BZ3M9X4T7Q2V8N5R6P1W0C",
  "code": "insufficient_scope",
  "request_id": "req_01K6BZ3M9X4T7Q2V8N5R6P1W0C"
}
Field Meaning
type A link to the page that explains the code.
title A short, stable summary.
status The HTTP status.
detail A human-readable explanation. Never parse it.
instance The request, as a URN.
code The stable, machine-readable code. Branch on status and code.
request_id The same value as the X-Request-ID header. Quote it to support.
errors Present on validation_failed: one entry per problem, as a JSON pointer and a code.

Rules

Every code

Authentication

StatusCodeTitleRetry
401invalid_api_keyInvalid API keyNo
401api_key_expiredAPI key expired (reserved: Not sent in v1)No
401api_key_revokedAPI key revoked (reserved: Not sent in v1)No

Access

StatusCodeTitleRetry
403api_access_disabledAPI access disabledNo
403ip_not_allowedIP address not allowedNo
403insufficient_scopeNot permittedNo
403tier_not_enabledCapability not enabledNo
403webhooks_disabledWebhooks not enabledNo
403sending_suspendedSending is stoppedNo
403outbound_not_approvedOutbound not approved yetNo

Request

StatusCodeTitleRetry
404route_not_availableNot foundNo
405method_not_allowedMethod not allowedNo
400credential_in_urlCredential in URLNo
400credential_in_bodyCredential in bodyNo

Validation

StatusCodeTitleRetry
400, 422validation_failedInvalid requestNo
400invalid_cursorInvalid cursorNo
400invalid_date_rangeInvalid date rangeNo
400batch_too_largeBatch too largeNo
413payload_too_largePayload too largeNo
415unsupported_media_typeUnsupported media typeNo
422webhook_url_refusedWebhook URL refusedNo

Idempotency

StatusCodeTitleRetry
400idempotency_key_requiredIdempotency-Key requiredNo
409conflictRequest in progressYes
409idempotency_conflictIdempotency key reusedNo
409duplicate_client_referenceDuplicate client referenceNo
409outcome_unknownOutcome unknownNo

Resource

StatusCodeTitleRetry
404not_foundNot foundNo
410recording_deletedRecording deletedNo
403recording_on_legal_holdRecording on legal holdNo

State

StatusCodeTitleRetry
409campaign_not_importableCampaign not importableNo
409campaign_not_runningCampaign not runningNo
409campaign_not_pausedCampaign not pausedNo
409callback_not_pendingCallback not pendingNo
409appointment_not_modifiableAppointment cannot be changedNo
409webhook_limit_reachedWebhook endpoint limit reachedNo
409replay_unavailableReplay unavailableYes
409agent_unavailableAgent not availableYes
402insufficient_balanceBalance too lowNo

Compliance

StatusCodeTitleRetry
409registry_stale_blockedLaunch blocked by do-not-call list statusNo
422dial_refusedCall refused by a compliance checkNo
422message_refusedMessage refused by a compliance checkNo
422on_dncDestination is on DNCNo
422blocked_countryDestination country blockedNo
503dnc_screen_unavailableDo-Not-Call screen unavailableYes

Capacity

StatusCodeTitleRetry
429replay_limit_reachedReplay limit reachedNo
429rate_limit_exceededToo many requestsYes
429daily_cap_reachedDaily limit reachedYes
429spend_cap_reachedDaily estimated-spend limit reachedYes
503temporarily_unavailableTemporarily unavailableYes
503upstream_unavailableTemporarily unavailableYes

Concurrency

StatusCodeTitleRetry
412precondition_failedPrecondition failedNo
428precondition_requiredPrecondition requiredNo

Server

StatusCodeTitleRetry
502upstream_invalid_responseUpstream errorNo
500internal_errorInternal errorNo