Zero Data RetentionQuantum-Ready Entropy256-bit MinimumClient-Side OnlyPost-Quantum ReadyZero KnowledgeNIST SP 800-63BFIPS 140-3 AlignedNo Account NeededDoD CompliantZero Data RetentionQuantum-Ready Entropy256-bit MinimumClient-Side OnlyPost-Quantum ReadyZero KnowledgeNIST SP 800-63BFIPS 140-3 AlignedNo Account NeededDoD Compliant
REST API · v1
PassGeni API Documentation.
Generate cryptographically secure, compliance-ready passwords programmatically. One endpoint. JSON in, passwords out. No setup beyond an API key.
Base URL
https://passgeni.ai/api/v1
Auth
API key in body
Format
JSON
Free tier
50 calls/day
Overview
The PassGeni API lets you generate secure passwords at scale — in your backend, during user onboarding, for credential rotation, or any programmatic use case. One endpoint. No SDK required.
The free tier gives you 50 calls per day with no API key. The Team plan ($29/month) gives you 5,000 calls/day, all compliance presets, and bulk generation up to 500 passwords per request.
Authentication
Pass your API key in the request body as apiKey. No Authorization header required. Free tier requests work without any key.
⚠️ Never expose your API key in client-side code or public repositories. Use environment variables. API keys can be rotated from your dashboard at any time.
Rate Limits
Tier
Calls / day
Max count per request
Compliance presets
Free (no key)
50 / day
10
—
Team
5,000 / day
500
All
Rate limit headers are returned on every response:
Generates one or more secure passwords. All parameters are optional — sensible defaults apply. Returns a JSON object containing the generated passwords plus audit metadata.
Request Parameters
Parameter
Type
Default
Description
apiKey
string
null
Your Team API key. Omit for free tier (50 calls/day).
profession
string
"general"
Influences password seed. Options: "developer", "doctor", "finance", "designer", "legal", "educator", or any custom string.
length
number
18
Password length. Range: 8–32. Compliance presets may enforce a higher minimum.
count
number
1
Number of passwords to generate. Free: max 10. Team: max 500.
compliance
string
null
Compliance preset. Options: "hipaa", "pci", "soc2", "iso", "nist", "dod". Team plan only.
mode
string
"password"
Generation mode. "password" or "passphrase".
quantum
boolean
false
Enable post-quantum mode. Sets minimum length 20, expands symbol set.
Response Schema
200 OK — success response
{
"passwords": ["nX9#kT2@mP5!qR8$vZ3", "Bz7!deploy#K3@stack"],
"count": 2,
"entropy": 131,
"length": 20,
"compliance": null,
"mode": "password",
"quantum": false,
"tier": "team",
"generated": "2025-01-15T14:23:11.442Z",
"audit": {
"entropySource": "Node.js crypto.randomInt() — FIPS 140-3 aligned",
"characterPool": "lower+upper+numbers+symbols",
"clientSide": false,
"serverContact": true,
"note": "API generation is server-side. For zero-knowledge generation, use the web tool at passgeni.ai"
}
}
Error Codes
Status
Error
Cause
400
Bad request
Malformed JSON or invalid parameter types
405
Method not allowed
Only POST is accepted
429
Rate limit exceeded
Too many requests. Check X-RateLimit-Reset
500
Generation failed
Internal error — try again or contact support
429 rate limit response
{
"error": "Rate limit exceeded",
"limit": 50,
"resetAt": "2025-01-15T15:00:00.000Z",
"upgrade": "Upgrade to Team for 5,000 calls/day — passgeni.ai/api"
}
Code Examples
cURL
cURL — basic
# Free tier — no API key needed
curl -X POST https://passgeni.ai/api/v1/generate \
-H "Content-Type: application/json" \
-d '{"profession": "developer", "length": 18, "count": 3}'