号码购买接口

调用BuySecretNo购买号码,通过本文您可以了解调用号码购买接口的操作流程。

前提条件

  1. 注册阿里云账号并完成企业实名认证。具体操作请参见注册阿里云账号企业实名认证

  2. 获取阿里云访问密钥。具体操作,请参见获取AccessKey

下载对应的SDK和DEMO样例程序编写代码

请到SDK&DEMO下载页面获取相应的SDK和DEMO程序,参照代码样例进行接口开发和调试。

入参列表

参数名称

参数类型

必填与否

样例取值

参数说明

PoolKey

String

必须

FC123456

号池Key。

SpecId

Long

必须

1

号码规格。取值:

  • 1:虚商号码(170、171)。

  • 2:运营商号码。

  • 3:95号码。

City

String

必须

杭州

购买号码归属地。

说明

95号码不区分地区,该参数填写全国通用

SecretNo

String

可选

130

根据号码前缀模糊匹配购买号码。

出参列表

出参名称

出参类型

样例取值

参数说明

RequestId

String

8906582E-6722

请求ID。

Code

String

OK

状态码。返回OK代表请求成功,其他错误码详见错误码列表。

Message

String

请求成功

状态码的描述。

SecretBuyInfoDTO

Object

详见结构体内容

成功后返回的结构体,结构体的属性详见Demo和SDK。

技术对接步骤

  1. 下载SDK工具包。

    • SDK工具包中一共包含了2个类库,一个aliyun-java-sdk-core包,另外一个是alicom-dypls-api包,将这两个包执行mvn package命令或者mvn deploy命令打包出相应的jar包,添加到工程类库中依赖使用。

    • SDK&DEMO下载地址,请参见SDK&DEMO下载

  2. 编写样例程序。

    //设置超时时间-可自行调整
    System.setProperty("sun.net.client.defaultConnectTimeout", "10000");
    System.setProperty("sun.net.client.defaultReadTimeout", "10000");
    //初始化ascClient需要的几个参数
    final String product = "Dyplsapi";//隐私号码产品名称(隐私保护产品名固定,无需修改)
    final String domain = "dyplsapi.aliyuncs.com";//隐私号码产品域名(接口地址固定,无需修改)
    //替换成你的AK
    final String accessKeyId = "yourAccessKeyId";//你的accessKeyId,参考本文档步骤2
    final String accessKeySecret = "yourAccessKeySecret";//你的accessKeySecret,参考本文档步骤2
    //初始化ascClient,暂时不支持多region
    IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", accessKeyId,
    accessKeySecret);
    DefaultProfile.addEndpoint("cn-hangzhou", "cn-hangzhou", product, domain);
    IAcsClient acsClient = new DefaultAcsClient(profile);
     //组装请求对象
     BuySecretNoRequest request = new BuySecretNoRequest();
     //必填:对应的号池Key
     request.setPoolKey(poolKey);
     //必填:1:170/171虚商号码 2:运营商号码 3:95号码
     request.setSpecId(specId);
     //必填:号码归属地
     request.setCity(city);
     //可选-指定X号码购买,支持模糊匹配,例如secretNo=138,则购买138号段号码
     request.setSecretNo(secretNo);
     //hint 此处可能会抛出异常,注意catch
     BuySecretNoResponse response = acsClient.getAcsResponse(request);
     if(response.getCode() != null && response.getCode().equals("OK")) {
              //请求成功
     }
                            

错误码列表

Code

描述

OK

请求成功。

isp.RAM_PERMISSION_DENY

RAM权限DENY。

isv.OUT_OF_SERVICE

业务停机。

isv.PRODUCT_UN_SUBSCRIPT

未开通云通信产品的阿里云客户。

isv.PRODUCT_UNSUBSCRIBE

产品未开通。

isv.ACCOUNT_NOT_EXISTS

账户不存在。

isv.ACCOUNT_ABNORMAL

账户异常。

isp.SYSTEM_ERROR

系统错误。

isp.UNKNOWN_ERR_CODE

运营商未知错误。

isv.PARTNER_NOT_EXIST

未知合作伙伴。

isv.ILLEGAL_ARGUMENT

参数非法。

isp.VENDOR_UNAVAILABLE

运营商降级。

isv.FLOW_LIMIT

业务流控。

isv.PARTNER_IS_CLOSED

partner被关停。

isv.FORBIDDEN_ACTION

无权操作。

isv.AMOUNT_NOT_ENOUGH

账户余额不足。

isv.PHONE_NOT_ENOUGH

号码不足。

isv.BUY_NUM_OVER_LIMIT

号码购买量超过限制。

isv.POOLKEY_NOT_EXISTS

号池不存在。