API 文档
JSON API 文档:2FA 验证码、IP、DNS 与 WHOIS 查询以及数据转换的接口。包含 Bearer 密钥认证、速率限制,每个接口都配有 curl 示例。
认证
Create a key under Account → API keys, then send it as a
bearer token. X-API-Key and ?api_key= also work for quick tests.
curl -s https://authbeta.com/api/v1/status \ -H "Authorization: Bearer ab_xxxxxxxxxxxxxxxxxxxx"
Base URL: https://authbeta.com/api/v1 · Every response is JSON with an ok flag.
速率限制
Each key has its own per-minute budget (default 120).
Responses carry X-RateLimit-Limit, X-RateLimit-Remaining and
X-RateLimit-Reset; going over returns 429 with a Retry-After header.
错误
| Status | Meaning |
|---|---|
| 400 | A required field is missing. |
| 401 | Key missing, invalid, disabled or expired. |
| 403 | The key lacks the scope this endpoint needs. |
| 404 | Unknown endpoint or vault entry. |
| 422 | The input was understood but cannot be used. |
| 429 | Rate limit exceeded. |
| 503 | The API is switched off by the administrator. |
{"ok": false, "error": "The \"secret\" field must be a valid base32 string."}
接口
/totp
scope: totp
Generate a code from a secret, otpauth link or free text.
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| secret | uri | input | string | 是 | The base32 secret, an otpauth:// link, or text containing one. |
| digits | int | 否 | 4-10, default 6 |
| period | int | 否 | Seconds, default 30 |
| algorithm | string | 否 | SHA1 | SHA256 | SHA512 | STEAM |
| counter | int | 否 | Present = HOTP mode |
| timestamp | int | 否 | Unix time to compute the code at |
| include_secret | bool | 否 | Echo the secret back, default false |
/totp/verify
scope: totp
Check whether a code matches a secret.
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| secret | string | 是 | Base32 secret |
| code | string | 是 | The code to verify |
| window | int | 否 | Allowed drift in steps, 0-10, default 1 |
/totp/secret
scope: totp
Create a new random secret and its otpauth link.
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| bytes | int | 否 | 10-64, default 20 (160 bit) |
| label | string | 否 | Account name |
| issuer | string | 否 | Service name |
/totp/qr
scope: totp
Render a QR code as PNG or SVG.
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| text | secret | string | 是 | Arbitrary text, or a secret to build an otpauth link from |
| format | string | 否 | png (default) or svg |
| scale | int | 否 | 2-20, pixels per module |
| ecc | string | 否 | L | M | Q | H |
| raw | bool | 否 | Return the image itself instead of JSON |
/totp/decode
scope: totp
Read a QR image and return the 2FA data it holds.
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| image | string | 是 | Base64 image data, with or without the data: prefix |
/totp/bulk
scope: totp
Codes for a whole list at once.
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| text | string | 是 | One entry per line |
| delimiter | string | 否 | auto (default), pipe, comma, tab, … |
| include_secret | bool | 否 | Echo secrets back, default false |
/password
scope: password
Generate one or more passwords.
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| mode | string | 否 | random | memorable | pin | hex | base64 | uuid |
| length | int | 否 | 4-256 |
| quantity | int | 否 | 1-50 |
| lowercase, uppercase, digits, symbols | bool | 否 | Character sets for random mode |
| exclude_ambiguous, no_repeat, no_sequential | bool | 否 | Extra rules |
| words | int | 否 | 2-12 for memorable mode |
/password/strength
scope: password
Score a password.
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| password | string | 是 | The password to analyse |
/ip/{ip}
scope: ip
Details for an IP address. Without {ip}, your own address is used.
/dns
scope: ip
DNS records for a hostname.
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| host | string | 是 | Domain name |
| type | string | 否 | Comma separated list, default A,AAAA,MX,NS,TXT |
/whois
scope: ip
WHOIS data for a domain or IP.
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| query | string | 是 | Domain or IP |
/ports
scope: ip
Check whether TCP or UDP ports accept traffic. TCP returns open/closed/filtered; UDP returns open, closed (ICMP unreachable) or open|filtered when the port stays silent.
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| host | string | 是 | Hostname or IP address |
| protocol | string | 否 | tcp (default) or udp |
| ports | array|string | 否 | List of ports, or "53,123,161". Defaults to the common ports for the chosen protocol. |
/email-security
scope: ip
SPF, DMARC, MX, MTA-STS and TLS-RPT for a domain.
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| domain | string | 是 | Domain name |
/text
scope: text
Run a text operation.
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| text | string | 是 | Input text |
| operation | string | 是 | See the list of operations below |
| … | mixed | 否 | Operation specific parameters (delimiter, column, find, replace…) |
/vault
scope: vault
List your saved 2FA accounts with current codes.
/vault/{id}/code
scope: vault
Current code for one vault entry. HOTP entries advance the counter.
/status
Details about the key you are using.
Example
curl -s https://authbeta.com/api/v1/totp \
-H "Authorization: Bearer ab_xxxxxxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{"secret":"JBSWY3DPEHPK3PXP","digits":6}'
{
"ok": true,
"result": {
"issuer": "", "label": "", "digits": 6, "period": 30,
"algorithm": "SHA1", "type": "totp",
"code": "123456", "next_code": "654321",
"expires_in": 17, "server_time": 1771200000
}
}
Text operations
Values accepted by the operation field of POST /text:
trim_lines
remove_empty
remove_duplicates
sort_asc
sort_desc
sort_natural
sort_length
shuffle
reverse_lines
reverse_text
number_lines
unique_count
extract_column
replace_delimiter
add_prefix_suffix
wrap_lines
find_replace
regex_replace
upper
lower
title
sentence
camel
snake
kebab
toggle_case
remove_spaces
collapse_spaces
remove_accents
slugify
base64_encode
base64_decode
url_encode
url_decode
html_encode
html_decode
hex_encode
hex_decode
json_escape
json_pretty
json_minify
extract_emails
extract_urls
extract_ips
extract_numbers
extract_secrets
hash_md5
hash_sha1
hash_sha256
hash_sha512
hash_crc32
join_lines
split_length
count_stats