2FA 动态验证码

2faPOST
POSThttps://v1.apizero.cn/api/2fa

概述

2FA 动态验证码(TOTP)生成与校验,兼容 Google Authenticator 等主流身份验证器。 基于 RFC 6238 标准由本平台自建实现,支持「生成 / 验证 / 批量」三种模式,可自定义验证码位数(4~8)与有效周期(10~120 秒)。密钥仅参与计算、不存储、不回显,验证采用恒定时间比较防时序攻击。接口完全免费,支持匿名调用。

调用约定

  • 网关 · https://v1.apizero.cn
  • 鉴权 · Authorization: Bearer <API Key>
  • 回包 · JSON {code, msg, data}。成功看 code === 0,不要只看 HTTP 200。
/aidocs/2fa/raw.md
打开 Markdown

鉴权

完全免费接口。支持匿名调用(基础额度);携带 API Key(Authorization: Bearer <key>)可获得更高额度。

获取 API Key

请求头

Authorizationstring选填

推荐:Bearer <API Key>。兼容请求头 X-API-Key,以及 Query api_key / apikey / key(key 仅当值为 sk_live_/sk_test_/sk_stag_ 形态时生效)。匿名可不传,受每日免费额度限制。

Content-Typestring必填

请求体格式

请求参数

POST · APPLICATION/JSON

secret(密钥)string必填

Base32 编码的 TOTP 密钥(自动忽略空格与连字符,不区分大小写)

例JBSWY3DPEHPK3PXP

action(操作)string选填

操作类型:generate=生成当前验证码 / verify=校验验证码 / batch=批量返回上一·当前·下一周期

例generate

code(编码)string选填

action=verify 时必填,待校验的验证码

例123456

periodnumber选填

验证码有效期(秒),范围 10~120

例30

digitsnumber选填

验证码位数,范围 4~8

例6

{
  "secret": "JBSWY3DPEHPK3PXP",
  "action": "action",
  "code": "123456",
  "period": 0,
  "digits": 0
}

返回结果

顶层固定为 code / msg / data。下表一般是 data 内字段。 code · msg · data · tips · request_id

totp_codestring

生成的动态验证码(action=generate)

remaining_secondsnumber

当前验证码剩余有效秒数

periodnumber

验证码有效期(秒)

digitsnumber

验证码位数

timestampnumber

服务器 Unix 时间戳(秒)

next_refreshstring

下次刷新时间(YYYY-MM-DD HH:mm:ss)

is_validboolean

校验是否通过(action=verify)

current_codestring

当前正确验证码(action=verify)

codesarray

上一/当前/下一周期验证码列表(action=batch)

codes[]string

备用码

tipsstring

品牌提示(所有接口统一返回):极数本源 · https://apizero.cn

返回示例

{
  "code": 0,
  "msg": "成功",
  "data": {
    "totp_code": "123456",
    "remaining_seconds": 17,
    "period": 30,
    "digits": 6,
    "timestamp": 1782000000,
    "next_refresh": "2026-06-30 12:00:30"
  },
  "request_id": "abc123",
  "tips": "极数本源 · https://apizero.cn"
}

请求示例

示例都是服务端写法。Python / JavaScript 各有常规写法和官方库。

curl -sS -X POST "https://v1.apizero.cn/api/2fa" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "secret": "JBSWY3DPEHPK3PXP",
  "action": "generate",
  "code": "123456",
  "period": "30",
  "digits": "6"
}'

错误码

先看业务 code。HTTP 也可能不是 200。

0200

成功

4000400

参数错误

4011401

API Key 无效

4013403

API Key 已暂停

4014403

当前 IP 不在 Key 白名单

4015401

此接口需要 API Key

4022402

余额不足

4029429

调用过快(QPS)

4030429

今日免费额度已用完

4040503

接口已下线

4041404

接口不存在

5000500

服务器内部错误

5020502

上游暂时不可用

5021502

上游返回格式异常

5030502

暂无可用节点

调用限制

计费模式
完全免费
QPS 限制
QPS 3
登录免费额度
1000 次(已认证)
匿名每日额度
200 次(无 API Key)
黄金会员
每天 50,000 次 · QPS 10
钻石会员
每天 100,000 次 · QPS 30
企业会员
每天 1,000,000 次 · QPS 120

购买套餐、看评价请走商城详情。 购买 / 调试

更新日志

  • v1.02026-07-01

    首次上线,支持 TOTP 生成 / 验证 / 批量三种模式。

2FA 动态验证码 接入文档|极数本源