首页 开发文档 分布式 ID 生成

分布式 ID 生成

分布式 ID 生成器。雪花算法(趋势递增、含时间戳与机器位,可反解生成时刻)、ULID(字典序可排序、26 字符)、NanoID(短且 URL 安全、可指定长度)、ObjectID(MongoDB 形态 24 位十六进制)、UUID v4(标准随机 UUID)。传入 parse 参数还能反解已有 ID 的时间戳与机器位,便于排查问题。

请求信息
请求地址 https://cx4.cn/openApi/dev/id 复制
请求方式 GET / POST
接口标识 dev_id
鉴权方式 必须
四种方式任选其一:Header「X-Api-Key」/ Header「Authorization: Bearer 你的key」/ URL 参数「?key=你的key」/ POST 参数「key」
请求参数
参数名 类型 必填 说明 示例
type string 否 snowflake 雪花 / ulid / nanoid / objectid / uuid_v4 snowflake
count int 否 生成数量,1-100 2
parse string 否 传入一个已有 ID 做反解,返回其生成时间等信息,此时忽略 count 1759...
length int 否 NanoID 长度,仅 type=nanoid 生效 21
datacenter_id int 否 雪花算法数据中心 ID 0-31 0
worker_id int 否 雪花算法机器 ID 0-31 0
返回参数

下表字段位于返回结构的 data 内;外层 code / message 为全平台统一格式,不在此重复列出。

参数名 类型 说明 示例
ok bool 是否成功 true
type string ID 类型 snowflake
count int 生成数量 2
ids array ID 列表 ["1759...","1759..."]
返回示例

成功

{
    "code": 200,
    "message": "操作成功",
    "data": {
        "ok": true,
        "type": "snowflake",
        "count": 2,
        "ids": [
            "894113811378733056",
            "894113811378733057"
        ]
    }
}

失败

{
    "code": 400,
    "message": "不支持的 ID 类型",
    "data": null
}
平台通用状态码
状态码 说明
200调用成功
400缺少必填参数或参数格式有误
401密钥缺失或无效
402余额不足,请充值后重试
403未开通该接口,请在本页开通后调用
404接口不存在或已下架
429触发限流,请稍后重试
500接口调用失败(已扣款的会自动退款)
调用示例

cURL 复制

curl -X POST "https://cx4.cn/openApi/dev/id" -H "X-Api-Key: 你的SecretKey" -d "type=snowflake&count=2&parse=1759...&length=21&datacenter_id=0&worker_id=0"

JavaScript 复制

fetch('https://cx4.cn/openApi/dev/id', {
  method: 'POST',
  headers: {
    'X-Api-Key': '你的SecretKey',
    'Content-Type': 'application/x-www-form-urlencoded'
  },
  body: 'type=snowflake&count=2&parse=1759...&length=21&datacenter_id=0&worker_id=0'
})
.then(res => res.json())
.then(data => console.log(data));

PHP 复制

post('https://cx4.cn/openApi/dev/id', [
    'headers' => ['X-Api-Key' => '你的SecretKey'],
    'form_params' => ['type' => 'snowflake', 'count' => '2', 'parse' => '1759...', 'length' => '21', 'datacenter_id' => '0', 'worker_id' => '0'],
]);
echo $response->getBody();

Java 复制

HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://cx4.cn/openApi/dev/id"))
    .header("X-Api-Key", "你的SecretKey")
    .header("Content-Type", "application/x-www-form-urlencoded")
    .POST(HttpRequest.BodyPublishers.ofString("type=snowflake&count=2&parse=1759...&length=21&datacenter_id=0&worker_id=0"))
    .build();
HttpResponse response = client.send(
        request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());

Python 复制

import requests

res = requests.post('https://cx4.cn/openApi/dev/id',
    headers={'X-Api-Key': '你的SecretKey'},
    data={'type': 'snowflake', 'count': '2', 'parse': '1759...', 'length': '21', 'datacenter_id': '0', 'worker_id': '0'})
print(res.json())
在线测试 (使用你的密钥真实调用,计费与正常调用一致)

登录后可在线测试: 立即登录

计费说明

¥0.0010

每次调用


每日免费额度:100 次

累计调用:9 次


快速上手

1. 注册并完成邮箱验证:立即注册

2. 登录后复制 Secret Key:去登录

3. 点击右侧「开通接口」按钮

4. 用下方「在线测试」一键体验,或复制下方示例代码直接调用