1. Getting Started
VeloConnect API
  • Getting Started
    • Introduction
    • Quick start: send your first SMS
    • Authentication
    • Errors
    • Limits
    • Delivery reports
    • Addresses and formats
    • Code samples
    • Viber and WhatsApp push reports
    • Refusal reasons
    • Changelog
    • Recipes
      • One-time code by SMS
      • One-time code by Viber, with SMS as a fallback
      • A campaign, from contacts to result
      • Connect a CRM
  • Messaging API (API Key)
    • Send SMS
      • Send SMS
      • Send SMS (GET form)
      • Send SMS to many numbers
      • Send SMS to many numbers (GET form)
    • SMS Delivery Status
      • List SMS records
      • Get an SMS record
    • SMS Verification Codes
      • Send a verification code (GET form)
      • Send a verification code
      • Check a verification code (GET form)
      • Check a verification code
    • Sender Names
      • List sender names (GET form)
      • List sender names
      • Get sender name status (GET form)
      • Get sender name status
    • Balance & Prices
      • Check balance (GET form)
      • Check balance
      • List rate plans
    • Viber
      • Campaigns
        • Send a Viber campaign
        • List Viber campaigns
      • Contact Lists
        • Create a Viber contact list
        • List Viber contact lists
        • Delete a Viber contact list
        • Add contacts to a list
        • Update contacts in a list
        • Delete a contact from a list
        • List contacts in a list
      • Conversations
        • List Viber conversations
        • List messages of a conversation
      • Message Records
        • List Viber message records
        • Get a Viber message record
      • Totals
        • Get Viber message totals
      • One-Time Codes
        • Send a Viber one-time code
        • List Viber code templates
      • Senders
        • Get a Viber sender
        • List Viber senders
      • Templates
        • Create a Viber template
        • List Viber templates
        • Delete a Viber template
        • Get a Viber template
    • WhatsApp
      • Senders
        • List WhatsApp senders
      • Campaigns
        • Send a WhatsApp campaign
        • List WhatsApp campaigns
      • Contact Lists
        • Add WhatsApp contacts
        • List WhatsApp contacts
        • Delete a WhatsApp contact list
        • Create a WhatsApp contact list
        • List WhatsApp contact lists
      • Contacts
        • Update WhatsApp contacts
        • Delete a WhatsApp contact
      • Conversations
        • List conversation messages
        • List WhatsApp conversations
      • Messages
      • Templates
        • Delete a WhatsApp template
        • Create a WhatsApp template
        • List WhatsApp templates
  • Sign-In & Account
    • Team Members
    • Registration
    • Reference Data
    • Verification & Password
    • Two-Factor
    • Authentication
      • Sign in (for programs)
      • Refresh the login token
      • Sign out
    • Profile
      • Get your account profile
  • API Key & Allowed IPs
    • Get the API key
    • Replace the API key
    • Get the allowed IP addresses
    • Set the allowed IP addresses
  • Campaigns (v2)
    • Campaigns
      • Create a campaign
      • Export campaigns to CSV
      • List campaigns
      • Get a campaign
      • Update a campaign
    • Tools & Pricing
      • Count SMS parts
      • Calculate campaign price
      • Preview campaign recipients
    • Messages
    • Telegram
  • Contacts (v2)
    • Contacts
      • Create a contact
      • Export contacts
      • Import contacts from CSV
      • List contacts
      • Get a contact
      • Update a contact
      • Delete a contact
    • Details
      • Add a contact detail
      • Export contact details
      • List contact details
      • Update a contact detail
    • Messages
      • Export a contact's messages
      • List a contact's messages
  • Segments (v2)
    • Create a segment
    • Export segments to CSV
    • List segments
    • Get a segment
    • Update a segment
    • Delete a segment
    • Add contacts to a segment
    • Remove contacts from a segment
  • Dashboard (v2)
    • Get channel breakdown
    • Get headline statistics
    • Get OTP statistics
    • Get message trends
  • Templates & Content
    • Canned Responses
    • Templates
      • Create a message template
      • List message templates
      • Update a message template
      • Delete a message template
      • Get a message template
    • Uploads
  • Sender Names & Rates
    • Rates
      • List message rates
    • Sender Names
      • Request a sender name
      • List sender names
      • Delete a sender name
      • Get a sender name
    • Reference Data
      • List trunks
      • List mobile operators
  • SMS Messaging
    • Conversations
      • List SMS conversations
      • List conversation messages
    • Delivery Records
      • Export SMS records
  • Email Messaging
    • Delivery Records
      • Export e-mail records
      • List e-mail records
      • Get an e-mail record
    • Pricing
      • List e-mail prices
  • Notifications & Statistics
    • Notifications
    • Statistics
      • List balance history
      • Get sender name expenses
  • Payments
    • Payments
      • List payments
      • Get a payment
    • Provider Callbacks
  • Link Shortener
    • Links
      • Create a short link
      • Get a link by code
      • Get a link
      • Update a link
      • Delete a link
    • Webhooks
    • Redirect
      • Open a short link
    • Analytics
      • Get statistics for several campaigns
      • Get campaign statistics
      • Get contact statistics
      • Get link statistics
  • Social Platform
    • Connections
      • List social connections
      • Get a channel
      • Disconnect a channel
      • Check channel subscription status
      • Get a connection
      • Disconnect a connection
      • Check a connection token
      • Resync channels of a connection
      • List supported providers
    • Inbox
      • List conversations of an account
      • List conversations of a channel
      • Sync conversations of a channel
      • Get a conversation
      • Get conversation status history
      • Mark a conversation as read
      • List messages of a conversation
      • Reply to a conversation
      • Sync messages of a conversation
    • Facebook
    • Instagram
    • Telegram
  • Telephony
    • DID Numbers
      • Purchase & Provisioning
      • Assignments
      • Catalog
      • Compliance
      • Orders
      • Reservations
    • PBX Tenants
    • SIP Voice
      • Monitoring
      • Calls
      • Session
  • Schemas
    • TemplateFilteringSortingModel
    • SocialChannelType
    • V2ContactDetailType
    • CommunicationType
    • RateFilteringSortingModel
    • PagedListGetModelOfV2ContactGetModel
    • SuccessResponseModelOfPagedListGetModelOfRateGetModel
    • SenderIdFilteringSortingModel
    • V2CampaignChannelGetModel
    • V2CampaignExportRequestModel
    • WebhookSubscriptionStatusDto
    • SocialProvider
    • V2CampaignChannelUpdateModel
    • SuccessResponseModelOfSenderIdGetModel
    • V2SegmentUpdateModel
    • V2ContactCsvDuplicateModel
    • PagedListGetModelOfRateGetModel
    • V2ContactMessageExportRequestModel
    • V2DashboardTrendsChannelModel
    • DataRecordFilterModel
    • SyncConversationsResponseDto
    • ClickEventDto
    • PagedListGetModelOfV2CampaignListItemModel
    • SocialConnectionDto
    • ErrorResponseModel
    • V2ContactCreateModel
    • V2SegmentContactsUpdateModel
    • TokenStatus
    • SuccessResponseModelOfV2ContactCsvImportResultModel
    • SuccessResponseModelOfEmailPriceGetModel
    • CustomerUserGetModel
    • V2ContactCsvImportResultModel
    • V2ContactDetailCreateModel
    • V2CampaignUpdateModel
    • SocialConversationDto
    • UnifiedInboxDto
    • ProviderType
    • CustomerUserLoginModel
    • SuccessResponseModelOfCustomerUserLoginResultModel
    • SuccessResponseModelOfV2CampaignGetModel
    • SuccessResponseModelOfPagedListGetModelOfSmsConversationGetModel
    • V2ContactDetailUpdateModel
    • V2ContactUpdateModel
    • WhatsAppStatus
    • PagedListGetModelOfPaymentGetModel
    • V2ContactDetailExportRequestModel
    • EmailDataRecordGetModel
    • SmsConversationGetModel
    • SenderIdType
    • LinkAnalyticsResponse
    • CustomerUserLoginResultModel
    • V2ContactMessageListFilterModel
    • FilterComparer
    • SuccessResponseModelOfV2SegmentGetModel
    • PagedListGetModelOfV2ContactDetailGetModel
    • SenderIdGetModel
    • PaymentDirection
    • TrafficType
    • UpdateLinkRequest
    • SuccessResponseModelOfPagedListGetModelOfV2CampaignListItemModel
    • WhatsAppTemplateCategory
    • PagedListGetModelOfSmsConversationGetModel
    • V2SegmentListFilterModel
    • ConversationStatus
    • V2ExportMode
    • V2SegmentGetModel
    • V2ContactDetailListFilterModel
    • SuccessResponseModelOfStatisticSenderIdExpensesGetModel
    • SenderIdStatus
    • PagedListGetModelOfV2ContactMessageListItemModel
    • V2DashboardOtpStatsModel
    • SuccessResponseModelOfPagedListGetModelOfSenderIdGetModel
    • SuccessResponseModelOfStatisticBalanceGetModel
    • StatisticSenderIdExpensesGetModel
    • SocialMessageDto
    • AdminUserGetModel
    • PagedListGetModelOfTemplateGetModel
    • SuccessResponseModelOfPagedListGetModelOfTemplateGetModel
    • CreateLinkRequest
    • ProblemDetails_link
    • SenderIdTrafficTypeGetModel
    • V2CampaignListItemModel
    • SuccessResponseModelOfV2CampaignPricePreviewModel
    • MessageStatus
    • SenderIdTypeGetModel
    • SocialChannelDto
    • SuccessResponseModelOfPagedListGetModelOfAreaMccMncGetModel
    • SuccessResponseModelOfV2CampaignMessageInfoModel
    • TokenGetModel
    • V2CampaignChannelCreateModel
    • StatisticBalanceGetModel
    • V2CampaignPricePreviewModel
    • RateGetModel
    • SocialConversationStatusHistoryDto
    • SuccessResponseModelOfPaymentListGetModelOfPaymentGetModel
    • V2SegmentCreateModel
    • AreaMccMncFilterModel
    • SuccessResponseModelOfString
    • MessageDirection
    • TokenRefreshModel
    • PagedListGetModelOfEmailDataRecordGetModel
    • SocialProviderDto
    • EmailPriceGetModel
    • ResyncChannelsResponseDto
    • SenderIdMediaAttachmentGetModel
    • TemplateUpdateModel
    • SuccessResponseModelOfPagedListGetModelOfV2SegmentGetModel
    • IFormFile
    • V2CampaignGetModel
    • PagedListGetModelOfSenderIdPriceGetModel
    • SuccessResponseModelOfEmailDataRecordGetModel
    • PagedListGetModelOfV2SegmentGetModel
    • PartnerCustomerUserLoginModel
    • V2ContactExportRequestModel
    • SuccessResponseModelOfTokenGetModel
    • PaginationModel
    • SyncMessagesResponseDto
    • SuccessResponseModelOfIEnumerableOfLong
    • SuccessResponseModelOfPaymentGetModel
    • SortingModel
    • V2CampaignChannelSummaryModel
    • SenderIdPriceGetModel
    • V2SegmentExportRequestModel
    • V2DashboardKpisModel
    • SuccessResponseModelOfTemplateGetModel
    • V2CampaignMessageInfoModel
    • AreaMccMncGetModel
    • V2DashboardOtpChannelModel
    • CampaignAnalyticsListRequest
    • PaymentListGetModelOfPaymentGetModel
    • ReplyMessageResponseDto
    • V2ContactDetailGetModel
    • V2DashboardChannelBreakdownModel
    • ContactAnalyticsResponse
    • SuccessResponseModelOfLong
    • LinkResponse
    • SuccessResponseModelOfCustomerUserGetModel
    • V2ContactGetModel
    • SuccessResponseModelOfBoolean
    • V2ContactDetailStatus
    • SuccessResponseModelOfPagedListGetModelOfSenderIdPriceGetModel
    • V2CampaignChannelPricePreviewModel
    • PagedListGetModelOfSenderIdGetModel
    • V2DashboardTrendsDataPointModel
    • TemplateGetBaseModel
    • SenderIdViberLogoGetModel
    • V2DashboardChannelFunnelModel
    • TemplateGetModel
    • ConversationStatusHistoryActionType
    • PaymentGetModel
    • V2CampaignListFilterModel
    • CustomerTrunkBaseGetModel
    • CampaignAnalyticsResponse
    • V2CampaignCreateModel
    • BusinessType
    • PaymentFilterModel
    • V2CampaignMessageInfoRequest
    • TemplateMediaAttachmentGetModel
    • SuccessResponseModelOfV2CampaignRecipientPreviewModel
    • FilteringModel
    • MessageType
    • SuccessResponseModelOfPagedListGetModelOfV2ContactMessageListItemModel
    • TemplateStatus
    • SuccessResponseModelOfCustomerTrunkBaseGetModel
    • FilteringSortingModel
    • V2ContactListFilterModel
    • V2DashboardTrendsModel
    • V2ContactMessageListItemModel
    • ConversationFilteringSortingModel
    • SuccessResponseModelOfPagedListGetModelOfEmailDataRecordGetModel
    • V2CampaignRecipientPreviewModel
    • SuccessResponseModelOfV2ContactGetModel
    • SuccessResponseModelOfPagedListGetModelOfV2ContactDetailGetModel
    • SortDirection
    • PagedListGetModelOfAreaMccMncGetModel
    • V2CampaignUnresolvableRecipientModel
    • RateDetailGetModel
    • RefreshTokenResponseDto
    • SuccessResponseModelOfPagedListGetModelOfV2ContactGetModel
  1. Getting Started

Limits

Sending SMS#

Each API key may have a limited number of send calls in progress at the same time. The limit counts calls
that are running, not calls per second. It covers /api/SendSMS, /api/SendSMSMulti and /api/Verify, in
both their POST and GET forms.
When you are over the limit, a new call first waits a few seconds for a free place. If none frees up, it is
refused:
HTTP/1.1 429 Too Many Requests
Retry-After: 5

{"Data": [], "ErrorMessages": ["Too many concurrent requests. Retry in 5s."]}
A refused call sent nothing and cost nothing. Wait the number of seconds in Retry-After and send it again.
How to send in volume without meeting the limit:
Keep a fixed number of connections open and send over them one call after another. A handful of parallel
connections carries a lot of traffic, because each call answers quickly.
Do not open a new connection for every message and do not fire all your messages at once.
On 429, slow down: wait Retry-After seconds, then continue with fewer parallel calls. Do not retry at once
in a loop.
To send one text to many people, use Send SMS to many numbers or a campaign
(Create a campaign) instead of many single calls.
Set your HTTP time-out to 30 seconds or more, so a call that is waiting for a place is not cut off by your
side.
If you plan a steady high volume, tell us before you start so we can size your account for it.

Signing in#

The sign-in call is limited to 20 calls per 5 minutes per IP address. Above that it answers 429 with the message
Too many login attempts. Please try again later. and no Retry-After header. Sign in once, keep the token and
renew it with the refresh call (see Authentication).

Other calls#

The other calls have no published limit today. Please page through lists with a reasonable page size and do not
poll faster than you need. For delivery results, a delivery report sent to your server is
better than asking again and again.
Modified at 2026-10-08 10:41:52
Previous
Errors
Next
Delivery reports
Built with