开发者

POST/v3/lnp/project/{uniqueid}/addnumbers

向现有号码携转项目添加号码

添加号码记录后,先核对项目记录,再重试结果不确定的请求。

本页
  1. 账户与项目访问
  2. 添加前的准备
  3. POST 请求
  4. 返回的结果
  5. 重试前先核对记录
  6. 旧版错误码
  7. 计费与携转范围

账户与项目访问

从获准的 IP 地址通过 HTTPS 使用已启用的 API 账户。项目必须属于该账户,且未被删除。请使用携转订单流程中的项目唯一标识,而非其数据库数字标识或电话号码。构建请求时,请对项目标识进行 URL 编码。

添加前的准备

此操作会修改现有的号码携转项目。请先通过携转订单流程确认号码及客户授权。将每个号码写为完整的国际号码数字串,自行去重,并检查项目现有的号码列表。请勿使用此端点测试任意号码。

当前门户会在调用此路由前验证号码并将其规范化。直接使用旧版端点时没有同等保障:它会去除输入首尾的空白,但不会检查电话号码格式、国家代码、重复号码或项目的流程状态。

POST 请求

在本地创建 numbers.json 文件,内容结构如下。示例号码均为虚构号码;请替换为所选项目中已获授权的号码。

{
  "numbers": [
    "12025550123",
    "12025550124"
  ],
  "isocode": "US"
}
curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
  --header "Content-Type: application/json" \
  --data-binary @numbers.json \
  "https://api.multitel.net/v3/lnp/project/$PROJECT_ID/addnumbers"
添加号码请求字段
字段含义
numbers必填,值为非空的号码字符串数组,或每行一个号码的字符串。空白条目会被丢弃,首尾空白会被去除。用逗号分隔的文本不会被拆分为多个号码。
isocode可选,指定新增记录的国家代码。省略或留空时,使用项目所在地。处理程序会去除所提供值首尾的空白,但不会将其转换为大写,也不会验证该值。请自行提供正确的大写国家代码。

本示例使用 POST,内容类型为 application/json。处理程序也会读取表单 POST 输入。此方法未定义幂等键,也未约定此端点专用的安全批量大小;请分成便于核对的批次处理并核对结果,不要依赖猜测的上限。

返回的结果

虚构的响应示例。

{
  "status": {
    "code": 200,
    "msg": "Success add numbers"
  },
  "response": {
    "uniqueid": "PROJECT_EXAMPLE",
    "count": 2,
    "numbers": [
      {
        "id": 21,
        "number": "12025550123",
        "status": 0,
        "status_str": "Pending",
        "isocode": "US"
      },
      {
        "id": 22,
        "number": "12025550124",
        "status": 0,
        "status_str": "Pending",
        "isocode": "US"
      }
    ]
  }
}

响应会将尝试添加的记录标记为 Pending。它不会在报告结果前核实每次数据库插入的结果。因此,仅凭计数或返回的标识,无法证明每条记录都已持久化保存。标记为 Pending 的新增记录,并不表示运营商已受理、已安排携转时间或已完成激活。

重试前先核对记录

  1. 添加号码前,先读取项目的号码列表,并在自己的请求记录中保存计划添加的号码。
  2. 发送一次添加请求。
  3. 再次读取项目号码列表,逐一核对计划添加的号码。检查重复号码以及每个号码的状态。
  4. 如果请求超时、返回错误或报告的结果不明确,请先重新读取列表,再决定是否重试。部分记录可能已经添加。
  5. 请通过携转订单流程或联系支持人员处理缺失或重复的记录,不要盲目重新发送整个请求。

处理程序逐条插入记录,不使用事务,也没有防重复机制。操作中断时,之前写入的记录可能仍然保留;返回 false 的失败插入操作仍可能计入报告的数量。重复请求可能添加重复记录。处理程序本身不会写入事件记录,也不会完成运营商侧的号码携转。

旧版错误码

使用 POST 以外的方法会返回 API 代码 403。项目不存在、已删除或不属于该账户时,会返回 API 代码 404。号码输入为空时,也会返回 API 代码 404。身份验证和来源 IP 限制仍然适用。这些旧版代码不能证明开始处理后此前没有发生过插入操作。

计费与携转范围

已审查的处理程序会插入项目号码记录,其中没有直接从账户扣款或向运营商提交申请的操作。这并不意味着整个号码携转服务免费,也不会取代已约定的携转费用。请先满足项目的授权、文件和审核要求,再期待号码携转。