API 文档
最后更新 2026-11-03 · 当前开放 19 个客户接口 · 金额单位 USDT
你的 API Key
登录后可以查看自己的 Key。所有请求都要带 X-Api-Key: <你的 Key>。
通用说明
| 项目 | 说明 |
|---|---|
| 接口域名 | https://icksms.com |
| 鉴权 | X-Api-Key 请求头;/api/v1/... 也支持 HTTP Basic(邮箱 + 密码) |
| 返回格式 | JSON。成功 {"ok":true,...};失败 {"detail":"原因"} + 对应状态码 |
| 金额 | USDT,接口返回为数字 |
| 限流 | 同一 IP 每秒 20 次(可瞬间多 40 次),同时最多 20 个连接,超过返回 429;异常消费可能被风控暂停下单 |
| 扣费 | 取号成功才扣费;失败请求不扣费;余额不足返回 402 |
接口分类
| 分类 | 用途 | 接口 |
|---|---|---|
| ① 号码类 | 查市场、号段、库存、取号、订单、号码和接码链接 | projects/market · prefix-options · stock · buy · orders · numbers · link |
| ② 短信类 | 取验证码、查短信列表、按 Token 公开查码 | code · sms · v1/sms/cursor · v1/sms/recent · v1/sms/token |
| ③ 换号 | 已关闭:不支持自助换号,如需处理请联系客服 | 无 |
| ④ IP 类 | IP 库存、购买、订单、续费 | ip/stock · ip/buy · ip/orders · ip/order · ip/renew |
| ⑤ 成功率 | 按项目 / 号段看短信接收成功率 | sms-stats |
① 号码类
查号码市场
参数:country(可选,按名称模糊筛选,例如 USA)。返回项目和各档位的价格、库存。
curl -H "X-Api-Key: __KEY__" "__BASE__/api/v1/projects/market"
{
"ok": true,
"rows": [{
"item_key": "c1p11t1499",
"name": "OpenAI/ChatGPT",
"description": "",
"country": "USA T-Mobile",
"days_label": "",
"available_count": 1288,
"unit_price": 0.12,
"price_tiers": [
{"item_key": "c1p11t1497", "label": "2-10天", "price": 0.12, "available_count": 0, "min_days": 2, "max_days": 10},
{"item_key": "c1p11t1499", "label": "21-30天", "price": 0.375, "available_count": 1288, "min_days": 21, "max_days": 30}
]
}],
"total": 1
}
下单要用 price_tiers[].item_key。外层 item_key 和 unit_price 是项目信息:unit_price 是最低档的价格,和外层 item_key 对应的档位不一定相同。
购买前查号段
参数:item_key(必填)。返回当前档位可购买的号段及快照库存;号段不会预留。
curl -H "X-Api-Key: __KEY__" \ "__BASE__/api/v1/numbers/prefix-options?item_key=c1p11t1499"
{
"ok": true,
"item_key": "c1p11t1499",
"prefix_length": 4,
"items": [{"prefix": "1603", "available_count": 58}],
"total": 58
}
查库存与价格
参数:item_key(可选,只看某个档位;如果它同时是项目的外层键,会返回该项目的所有档位)、with_prefixes=1(可选,附带号段明细)。
curl -H "X-Api-Key: __KEY__" "__BASE__/api/open/stock?item_key=c1p11t1499&with_prefixes=1"
{
"ok": true,
"balance_usdt": 9.60,
"role": "user",
"items": [{
"item_key": "c1p11t1499",
"name": "OpenAI/ChatGPT 21-30天",
"days_label": "21-30天",
"unit_price": 0.375,
"total": 1288,
"prefixes": [{"prefix": "1603", "count": 58}],
"project_item_key": "c1p11t1499"
}]
}
每行是一个档位,下单用这一行的 item_key。unit_price 是应付单价,total 是可售数量,prefixes 用来指定号段。
取号码(下单,取号即扣费)
参数:item_key、quantity(1-5000)、prefixes(号段数组,留空不限)、strict_prefixes(可选,严格限制号段)、min_quantity(可选,最低成交数量)、client_request_id(可选,强烈建议传,8-64 位字母、数字或 . _ : -)、customer(下游客户标识:普通账号可选;站长账号必填,填自己客户的账号)。
curl -X POST __BASE__/api/open/buy \
-H "X-Api-Key: __KEY__" -H "Content-Type: application/json" \
-d '{"client_request_id":"order-20261022-0001","item_key":"c1p11t1499","quantity":5,"min_quantity":3,"prefixes":["1603"],"strict_prefixes":true,"customer":"shop-a-001"}'
{
"ok": true,
"order_id": 12,
"client_request_id": "order-20261022-0001",
"idempotent_replay": false,
"requested_quantity": 5,
"accepted_quantity": 5,
"min_quantity": 3,
"strict_prefixes": true,
"amount_usdt": 1.875,
"balance_usdt": 7.725,
"numbers": [{
"number": "16039169591",
"link": "https://icksms.com/sms/xxxxxxxx",
"prefix": "1603"
}]
}
client_request_id 在 180 秒内只能对应一笔订单。因超时重试时继续传同一个值,系统会返回原订单,idempotent_replay=true,不会重复扣费;新订单必须生成新值,超过 180 秒再用同一个值会返回 409。未传时仍有一次约 9 秒的同参数防连点保护,但正式对接建议始终传该字段。
min_quantity:实际可分配数量不少于该值才成交,否则整单失败并退还预扣余额。未传时保持现有规则,库存不足可按实际数量成交。显式传 strict_prefixes=false 时,指定号段只作为偏好,不足时允许其他号段补齐;省略该字段时沿用旧规则,即指定号段默认严格。
查订单
参数:customer(可选,只看某个下游客户的单)、limit(1-500,默认 50)。返回 rows(订单列表)和 numbers(账号最近 200 个号码)。
customer 只筛选 rows,不筛选 numbers。不要把 numbers 直接展示给下游客户,否则可能看到别人的号码。curl -H "X-Api-Key: __KEY__" "__BASE__/api/open/orders?customer=shop-a-001"
查我的号码
参数:days=3(剩余天数 ≤ 3)、item_key、q、include_expired=1、limit(默认 500,最大 10000)。
curl -H "X-Api-Key: __KEY__" "__BASE__/api/open/numbers?days=3&limit=100"
{
"ok": true, "count": 2, "total": 2,
"items": [{
"number": "16039169591", "prefix": "1603",
"item_key": "c1p11t1499", "item_name": "OpenAI/ChatGPT 21-30天",
"order_id": 12, "expires_on": "2026-11-18", "days_left": 30,
"online": true, "frozen": false,
"link": "https://icksms.com/sms/xxxxxxxx"
}]
}
查单个号码的接码链接
参数:number(必填)、item_key(可选,号码跨项目复用时用)。
curl -H "X-Api-Key: __KEY__" "__BASE__/api/open/link?number=16039169591"
② 短信类
取验证码(推荐)
参数:number 或 order_id(二选一)、wait(0-30 秒,没收到短信时最多等待)。
curl -H "X-Api-Key: __KEY__" "__BASE__/api/open/code?number=16039169591&wait=20"
{
"ok": true,
"number": "16039169591",
"order_id": 12,
"item_key": "c1p11t1499",
"has_sms": true,
"code": "845016",
"content": "Your OpenAI verification code is 845016",
"from": "OpenAI",
"received_at": "2026-10-19 21:42:10",
"link": "https://icksms.com/sms/xxxxxxxx"
}
查某个号码的全部短信
参数:number(必填)。返回最近 50 条和最新验证码。
curl -H "X-Api-Key: __KEY__" "__BASE__/api/open/sms?number=16039169591"
短信列表(游标分页)
参数:keyword、country、item_key、number、cursor、page_size(1-100,默认 25)、time_start、time_end。
curl -H "X-Api-Key: __KEY__" "__BASE__/api/v1/sms/cursor?page_size=50&item_key=c1p11t1499"
返回 rows、has_more、next_cursor;下一页把 next_cursor 传回 cursor。
近期短信
参数:limit(1-50,默认 10)。返回当前账号最近收到的短信,适合仪表盘和短轮询。
curl -H "X-Api-Key: __KEY__" "__BASE__/api/v1/sms/recent?limit=20"
通过接码 Token 查最新短信
公开接口,不需要 API Key。参数:token(接码链接 /sms/ 后面的部分)。返回号码、项目、最新短信、验证码、发送方和到期时间。
curl "__BASE__/api/v1/sms/token?token=xxxxxxxx"
{
"ok": true,
"token": "xxxxxxxx",
"number": "16039169591",
"exists": true,
"has_sms": true,
"code": "845016",
"content": "Your OpenAI verification code is 845016",
"sender": "OpenAI",
"received_at": "2026-10-22 21:42:10",
"project": "OpenAI/ChatGPT 21-30天",
"expires": "2026-11-18",
"days_left": 27
}
③ 换号(已关闭)
号码按下单扣费,不支持自助换号。POST /api/open/change 已关闭,调用返回 403。如需处理请联系客服。
④ IP 类
IP 库存
curl -H "X-Api-Key: __KEY__" "__BASE__/api/open/ip/stock"
购买 IP
参数:city_code、isp_type(1 广播 / 2 原生)、quantity、days(30/60/90/180/365)、tag(可选线路)、cidr(可选网段)。
curl -X POST __BASE__/api/open/ip/buy \
-H "X-Api-Key: __KEY__" -H "Content-Type: application/json" \
-d '{"city_code":"us-la","isp_type":2,"quantity":1,"days":30}'
IP 订单 / 我的 IP
下单后分配通常几秒到一分钟,用订单号轮询,拿到 IP、端口、账号密码。
IP 续费
参数:instance_id(IP 订单返回的 instances[].id)、days(30/60/90/180/365,其他值按 30 天)。续费会扣账号余额。
curl -X POST __BASE__/api/open/ip/renew \
-H "X-Api-Key: __KEY__" -H "Content-Type: application/json" \
-d '{"instance_id": 123, "days": 30}'
⑤ 接码成功率
按项目 / 号段看接码成功率。所有 API 客户可用。参数:item_key(可选,只看某个项目)。
curl -H "X-Api-Key: __KEY__" "__BASE__/api/open/sms-stats?item_key=c1p11t1499"
{
"ok": true,
"updated_at": "2026-11-03 14:39:59",
"note": "数值最近 60 天;rate 为 null 表示样本不足;status=dead 的号段已自动停止发货",
"projects": [{
"project_key": "c1p11",
"name": "OpenAI/ChatGPT",
"rate": 0.83,
"good_prefixes": ["1808"],
"dead_prefixes": ["1603"],
"prefixes": [
{"prefix": "1808", "rate": 0.86, "status": "good"},
{"prefix": "1950", "rate": null, "status": "watch"}
]
}]
}
rate 是成功率(0.83 = 83%),样本不足时为 null。status:good 好号段 / watch 观察 / dead 已停止发货。不支持按号段筛选,全部号段都在 prefixes 里。
完整流程示例
查库存 → 下单 → 等短信 → 取验证码:
# 1. 查库存
curl -H "X-Api-Key: __KEY__" "__BASE__/api/open/stock?item_key=c1p11t1499"
# 2. 下单取号
curl -X POST __BASE__/api/open/buy \
-H "X-Api-Key: __KEY__" -H "Content-Type: application/json" \
-d '{"client_request_id":"new-unique-id-per-order","item_key":"c1p11t1499","quantity":1}'
# 3. 等短信并取验证码(最多等 25 秒)
curl -H "X-Api-Key: __KEY__" \
"__BASE__/api/open/code?number=16039169591&wait=25"
错误码
| 状态码 | 含义 | 处理建议 |
|---|---|---|
| 400 | 参数错误或请求 ID 格式不正确 | 按 detail 修正参数 |
| 401 | Key 无效或未带鉴权 | 检查 X-Api-Key |
| 402 | 余额不足 | 先充值 |
| 403 | 号码不属于你 / 权限不足 / 风控暂停 | 换自己的号码或联系客服 |
| 404 | 资源不存在 | 检查 item_key / 订单号 / 号码 |
| 409 | 库存不足、未达到最低成交数量或重复请求冲突 | 按返回说明调整参数;幂等冲突时为新订单生成新的 client_request_id |
| 429 | 请求过于频繁或连接过多 | 降低频率和并发后重试 |
| 500 | 服务端异常 | 稍后重试,持续出现请联系客服 |
| 502 | 号码服务暂时不可用,或订单正在核对 | 本次不会重复下单;稍后查询原订单或联系客服 |
接口以线上实际返回为准。需要新增字段或对接帮助,请联系客服。