开发者

POST/v3/campaign

为消息发送活动分配号码

将您拥有的 SMS 发送号码关联到活跃的消息发送活动,移除关联,并处理传输层接受与部分更新。

本页
  1. 为消息发送活动分配发送号码
  2. 请求
  3. 移除当前关联
  4. 响应与验证
  5. 错误与部分结果
  6. 范围与影响

为消息发送活动分配发送号码

请在您的消息品牌和生产消息发送活动均已注册且消息发送活动处于活跃状态后使用此操作。它将您账户中的一个支持 SMS 的号码与该消息发送活动关联。它不会创建品牌、创建或批准消息发送活动、购买号码或发送消息。

当前门户在为号码分配消息发送活动时使用此路由。公共 API 接受消息发送活动标识符;它从账户拥有的消息发送活动中推导品牌,而不接受单独的品牌标识符。

请求

使用您已启用的 API 账户及其允许的源 IP 地址,通过 HTTPS 发送表单编码的 POST。请使用您账户中的实际号码和消息发送活动标识符。本示例中的号码是虚构的。

curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
  --data-urlencode 'action=add' \
  --data-urlencode "campaign=$CAMPAIGN_ID" \
  --data-urlencode 'number=12025550123' \
  'https://api.multitel.net/v3/campaign'
消息发送活动分配参数
参数必填含义
action是使用 add 进行分配,或使用 delete 移除该号码当前的消息发送活动关联。大小写和首尾空格会被规范化。
campaignadd 时必填campaignId,对应由已认证账户拥有的 ACTIVE 消息发送活动。其品牌也必须属于该账户。明确标记为 sandbox 的消息发送活动不能分配给真实发送号码。delete 时请省略此参数;移除操作使用该号码现有的关联。
number是您拥有的、活跃的、未作废的、支持 SMS 的发送号码。对于北美号码,请使用国家代码 1 后接其十位数字,不带加号。处理程序会移除非数字字符,并同时查找带加号前缀和十位数字的等效形式。此规范化不是通用的电话号码有效性检查。

此操作只更改一个号码。它没有分页、批量参数或试运行选项。不要仅为了将号码关联到现有消息发送活动而使用消息发送活动创建端点。

移除当前关联

对您拥有的号码使用 action=delete。这会移除其消息发送活动关联,并清除该号码已保存的品牌/消息发送活动字段。它不会删除消息发送活动或品牌、释放电话号码、取消该号码的服务,也不会停止该消息发送活动的定期计费。

curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
  --data-urlencode 'action=delete' \
  --data-urlencode 'number=12025550123' \
  'https://api.multitel.net/v3/campaign'

响应与验证

此虚构示例展示了普通的 API 响应封装和选定的结果字段。返回的号码保留您账户中存储的格式。成功移除后,brandId 和 campaignId 为空字符串。

{
  "status": {"code": 200, "msg": "Campaign assignment updated."},
  "response": {
    "number": "+12025550123",
    "brandId": "BRAND_FROM_ACCOUNT",
    "campaignId": "CAMPAIGN_FROM_ACCOUNT",
    "providerStatus": 200
  }
}

providerStatus 是消息合作伙伴的 HTTP 状态。处理程序接受 2xx 传输响应,然后更新本地号码记录;它不会解析合作伙伴的响应正文以获取单独的业务级接受结果。因此,成功响应并不能证明消息注册已完成或投递将会成功。在发送生产流量之前,请在门户中查看该号码的消息发送活动状态。

不要仅将本地关联视为投递批准。消息发送活动和品牌批准、号码配置、账户权限、内容规则以及普通消息限制仍然适用。

错误与部分结果

  • 401:处理程序没有可用的已认证账户。
  • 400:action 或 number 缺失/无效,或者 add 请求没有消息发送活动标识符。
  • 404:该号码不是您拥有的、活跃的、未作废的 SMS 号码。
  • 409:该消息发送活动对账户不可用、不是 ACTIVE、被明确标记为 sandbox,或其品牌对账户不可用。
  • 503:消息集成不可用。请联系支持,而不要更改账户凭据或凭空编造配置值。
  • 502:消息请求失败、超时或返回了非 2xx 的 HTTP 状态。可能会返回 providerStatus。超时并不能证明合作伙伴未做任何更改。
  • 500 且 partial=true:消息合作伙伴返回了成功的 HTTP 状态,但无法确认本地关联。请在重试之前在门户中核对该号码或联系支持。

除 HTTP 结果外,还请检查 API 状态码和响应正文。不要盲目重试超时或部分结果。此处理程序没有请求级幂等键、事务回滚或消息发送活动注册完成检查。即使数据库报告没有更改任何行,重复的匹配本地分配也可能返回成功。

范围与影响

此操作会更改发送号码的路由及其已保存的消息发送活动/品牌关联。在已审查的处理程序中,它不包含任何直接的账户扣款、消息发送活动创建、购买或消息发送。这不是报价,也不是免费服务的承诺:现有的号码、消息发送活动和消息费用将继续按您的账户条款计收。

在门户中,更改为另一个消息发送活动时,会先移除先前的关联,然后再添加新的关联。这是两个独立的请求。如果第二个请求失败,先前的关联可能已被移除。不要假设这两个请求会一起回滚。