跳到主要内容
Version: 1.0

Conversations API

概述

欢迎使用PaaSoo对话API,这是您跨多渠道无缝客户互动的门户!

通过这个强大的API,您可以通过WhatsApp、Telegram、Apple Messages for Business、Viber Business Messages等流行平台与您的客户建立联系。

通过简化各个渠道的沟通,Conversations API 使您能够提供卓越的客户体验。

Postman

要以交互方式探索我们的 API 端点并轻松发起请求,您可以访问我们的 Postman 公共集合

身份验证

要使用 Conversations API 的功能,您需要使用 API 令牌对您的请求进行身份验证。

按照以下步骤开始:

  1. 通过我们直观的客户端生成唯一的 API 令牌。
  2. 在你发出的每个 API 请求的 Authorization 标头中包含生成的令牌。

以下是如何构建标题:

HeaderDescriptionExample
AuthorizationYour API tokenBearer <API_TOKEN>

响应与错误

Paasoo 会话 API 使用标准的 HTTP 状态码 来表示请求的结果。 以下是供您参考的常见状态码的非详尽列表。

Status codeDescription
200successful request
400bad request
401Unauthorized access
404Resource not found
5xxsomething went wrong on our end

当请求出错时,API 将以以下格式的 JSON 正文进行响应:

{
"id": <id>,
"receivedTime": <receivedTime>,
"code": <errorCode>,
"message": "<errorMessage>"
}

响应错误代码详见下文。

Http Status CodeCodeMessageResolution
4004000Validation errorCheck request body structure and ensure all required fields are present
4014001API Token is not validVerify your API token and regenerate if needed
4004002The user has unsubscribedRemove contact from campaign or wait for user to re-subscribe
4004003Your balance is not sufficient for this transactionAdd credits to your account balance
4004004Missing parametersAdd missing required fields (type, to, content, channel)
4004005Parameters are invalidCheck parameter formats, lengths, and channel compatibility (see Supported Features section). For Apple Messages for Business this is also returned in reject mode when a payload violates an iOS 27 compliance rule (UUID identifiers, HTTPS URLs, PNG images, ISO Apple Pay codes, keyboardType, UI string/range limits); in warn mode the same violations are listed in the response warnings field instead.
4004006Not allowed to send free-form messagesUse approved templates (required for WhatsApp initial contact) or check channel restrictions
4004007Channel is not activatedActivate the channel in your account settings
4004010Tag not foundVerify the tag ID exists in your account
4004011Tag already existsUse a different tag name or update the existing tag
4004020Contact not foundVerify the contact ID exists in your account
4004021failover timeoutSeconds param illegalEnsure timeoutSeconds value is within valid range
4004022failover channel max sizeReduce the number of failover channels in the chain
4004023failover channel duplicateRemove duplicate channels from failover configuration
4004024Template not foundVerify the template ID and check approval status in your account
4004025Template validate error:Check template parameters and format against template definition
4004026WhatsApp Cloud API template errorThe Meta (WhatsApp) Cloud API rejected the request. The message field contains the user-facing reason from Meta (e.g. duplicate template name, invalid component).
4004051Sender is unavailableVerify WhatsApp sender is properly configured and available
5294052Too Many RequestsThe channel has been throttled, please try again later
4004053Unsupported OperationViber templates do not support modifications
4004054Unsupported OperationTemplate management for this channel is not currently supported
4004055Unsupported OperationViber template mismatch
4004060Invalid channel user IDProvide a valid WhatsApp Business-Scoped User ID (BSUID) in CC.alphanumeric format, e.g. US.DDC91135R
4044065Media not foundVerify the media ID exists and was uploaded by your account
4004066File too largeEnsure the file does not exceed the 200 MB limit
4004067Unsupported file typeUse a supported MIME type (see Media and WhatsApp Media endpoint descriptions)
4004068Media download failedVerify the URL is publicly accessible and returns a valid response
5004069Upstream provider unavailableRetry the request; if the issue persists contact support
4004070File is emptyThe uploaded file has no content (0 bytes); upload a non-empty file
4004071IP address is not allowedYour account has an IP whitelist configured; add the request IP to the whitelist or call from an allowed IP
4004080The number of template ids exceeds the maximum of 10Limit the template analytics request to 10 or fewer template IDs
4004081Invalid date format; YYYY-MM-DD is required when useWabaTimezone is trueSend start/end as YYYY-MM-DD when useWabaTimezone is true
4004082End date must not be earlier than start dateEnsure end is on or after start in the query window
4004084WhatsApp template analytics errorThe Meta template analytics API rejected the request; see the message field for the reason from Meta
4004085Start and end must not be in the futureUse a start/end date or epoch that is today or earlier
4004090Contact field does not exist for this appPass only AppField codes that are defined under your app in invitation-link contactFields
4004091Contact field value too longKeep each contactFields value to 200 characters or fewer
4004092Invitation URL too longReduce the number/size of parameters so the generated URL is 2000 characters or fewer
4004093Contact field value invalidRemove injection patterns (e.g. <script>, javascript:) from contactFields values

Error Handling Best Practices:

  • Always check the code field in the response to identify the specific error
  • Log error messages for debugging and monitoring
  • Handle validation errors (4000-4007, 4010-4011, 4020-4025, 4051, 4060, 4065-4068, 4080-4082, 4085, 4090-4093) by correcting the request parameters before retrying
  • Monitor account balance to avoid 4003 errors
  • Refer to the Supported Features section for channel-specific constraints to prevent 4005 errors
  • Verify failover configuration parameters to avoid 4021-4023 errors

支持的功能

The following table list the features supported for each available channel.

AppleMB

FeatureContent TypeComments
TextTEXTMax 4,096 characters
Attachment (Image, Video, Document)MEDIAMax 100MB Image, Max 100MB Video, Max 100MB Document
LocationLOCATIONGeographic location sharing
QuickReplyQUICK_REPLYMax 5 choices
RichLinkRICH_LINKRich cards with image, title, description, and link
ListPickerLIST_PICKERMulti-item selection lists
TimePickerTIME_PICKERDate and time selection interface
ApplePayAPPLEMB_PAYApple Pay integration for payments
AuthenticationAPPLEMB_AUTHOAuth authentication flows
FormAPPLEMB_FORMInteractive form elements
Invitations MessageAPPLEMB_UPDATE_MESSAGEInvitations message to mobile number
TypingIndicatorTYPING_START / TYPING_ENDShow (TYPING_START) or dismiss (TYPING_END) the typing indicator. No content body is required.
Subscribe/Unsubscribe-Subscription management
iMessageApps-iMessage app integrations

Viber

FeatureContent TypeComments
TextTEXTMax 1,000 UTF-8 characters
ImageMEDIAMax 200MB - Expected formats: .jpg, .png
VideoMEDIAMax 200MB
DocumentMEDIAMax 200MB (.doc, .docx, .rtf, .dot, .dotx, .odt, .odf, .txt, .info, .pdf, .xps, .pdax, .eps, .xls, .xlsx, .ods, .fods, .csv, .xlsm, .xltx)
Action ButtonBUTTONMax 6 buttons - 允许企业在每条消息中只包含一个可点击的按钮,可触发 URL。 详细字段说明请参见 content.button/ViberButton 模型。
List Message (QuickReply)QUICK_REPLY列表消息 让商家可以向用户展示一个问题,并提供 2–10 个可供选择的答案,用户可以从中选择一个选项进行回复。在 24 小时活跃会话窗口内发送的列表消息按 Viber 会话费率计费(类型码 802),会话窗口外则按事务费率计费(类型码 801)。UI 风格可通过 viber.listMessageUiType 控制(1 = 经典单选按钮,默认;2 = 横向按钮,需 Viber 客户端 27.8.2+)。详细字段说明请参见 content.quickReply/ViberListMessage 模型。
Carousel MessageCAROUSELHorizontal scrollable cards (multiple cards) - 轮播消息 允许商家发送一条包含文本和多个可自定义版块(items)的消息。 每个版块都可展示不同的产品或服务,并配有专属的媒体内容和行动号召按钮(call-to-action)。
TemplateTEMPLATERussia/Ukraine templates, Transactional/Promotional templates, Viber templates
OTP Verification Message-OTP Verification messages 允许品牌通过向客户发送一次性密码(OTP)来验证其身份。请联系支持团队获取支持的语言列表和模板 ID。

WhatsApp

FeatureContent TypeComments
TextTEXTMax 1,024 UTF-8 characters
ImageMEDIAMax 5MB (.jpg, .png)
VideoMEDIAMax 16MB (.3gp, .mp4)
AudioMEDIAMax 16MB (.aac, .amr, .m4a, .mp3, .ogg)
DocumentMEDIAMax 100MB (.txt, .xls, .xlsx, .doc, .docx, .ppt, .pptx, .pdf)
LocationLOCATIONGeographic location sharing
Interactive Reply buttonsQUICK_REPLYQuick reply buttons for user responses
Interactive CTA URL buttonBUTTONMax 3 buttons with call-to-action URLs
TemplateTEMPLATEPre-approved message templates (Marketing, Utility, Authentication, Service) - Required for initial contact
Interactive List-Interactive list picker
Sticker-Sticker support
Reaction-Message reactions

RCS/RBM

FeatureContent TypeComments
TextTEXTMax 3,072 characters
Media (Images, Videos, Documents, Audio)MEDIAMax 100MB (.ogx, .pdf, .aac, .mp3, .mpeg, .mp4, .3gp, .jpg, .gif, .png, .h263, .m4v, .m4p, .webm)
LocationLOCATIONGeographic location sharing
Suggested repliesQUICK_REPLYQuick reply suggestions for user responses
Suggested actions (Buttons)BUTTONMax 4 buttons - Dial Number, Text, Location, Web URL
Rich cardCARDRich card with single image, title, description, and buttons
Rich card carouselCAROUSELHorizontal scrollable cards (multiple cards)
Subscribe/Unsubscribe-Subscription management

Telegram

FeatureContent TypeComments
TextTEXTMax 4,096 characters
PhotoMEDIAMax 10MB
VideoMEDIAMax 50MB
AudioMEDIAMax 50MB (.mp3, .m4a)
DocumentMEDIAMax 50MB
QuickReply/KeyboardRowQUICK_REPLYQuick reply buttons for user responses
ButtonsBUTTONAction buttons with URLs or postback data

LINE

FeatureContent TypeComments
TextTEXTMax 5,000 characters
ImageMEDIAMax 10MB (.jpg, .jpeg, .png)
VideoMEDIAMax 200MB (.mp4)
AudioMEDIAMax 200MB (.m4a)
DocumentMEDIAMax 200MB
QuickReplyQUICK_REPLYMax 13 quick reply buttons for user responses
Subscribe/Unsubscribe-Follow/Unfollow events from the LINE Official Account

Notes:

  • Each channel table above includes a Content Type column showing the API content type value to use in message requests
  • Features marked with "-" in the Content Type column are channel-specific capabilities that don't map directly to the content type API parameter

Authentication

Bearer HTTP authentication. Headers-- Authorization: Bearer <TOKEN>

Security Scheme Type:

http

HTTP Authorization Scheme:

bearer

Bearer format:

auth-scheme