Аутентификация

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.

Ошибки

StatusMeaning
400A required field is missing.
401Key missing, invalid, disabled or expired.
403The key lacks the scope this endpoint needs.
404Unknown endpoint or vault entry.
422The input was understood but cannot be used.
429Rate limit exceeded.
503The API is switched off by the administrator.
{"ok": false, "error": "The \"secret\" field must be a valid base32 string."}

Эндпоинты

POST /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
POST /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
POST /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
POST /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
POST /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
POST /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
POST /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
POST /password/strength scope: password

Score a password.

Параметр Тип Обязательный Описание
password string да The password to analyse
GET /ip/{ip} scope: ip

Details for an IP address. Without {ip}, your own address is used.

GET /dns scope: ip

DNS records for a hostname.

Параметр Тип Обязательный Описание
host string да Domain name
type string нет Comma separated list, default A,AAAA,MX,NS,TXT
GET /whois scope: ip

WHOIS data for a domain or IP.

Параметр Тип Обязательный Описание
query string да Domain or IP
POST /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.
GET /email-security scope: ip

SPF, DMARC, MX, MTA-STS and TLS-RPT for a domain.

Параметр Тип Обязательный Описание
domain string да Domain name
POST /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…)
GET /vault scope: vault

List your saved 2FA accounts with current codes.

GET /vault/{id}/code scope: vault

Current code for one vault entry. HOTP entries advance the counter.

GET /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