Quickstart
1. Get an API key
Create one at dashboard.auth314.com → API Keys → Create. The key is shown once — store it securely, it can't be recovered.
2. Start a verification
bash
curl -X POST https://app.auth314.com/verify/init \
-H "Authorization: Bearer auth314_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"platform": "discord",
"platform_user_id": "123456789",
"guild_id": "987654321",
"callback_url": "https://your-app.example.com/auth314/callback"
}'platform and guild_id are arbitrary strings you define. platform_user_id is whatever ID you use to identify the person on your end (a Discord user ID, an internal user ID, anything unique). callback_url must be https.
Response:
json
{
"verify_url": "https://app.auth314.com/?session=...",
"session": "...",
"expires_at": "2026-07-18T05:00:00.000Z"
}3. Send the user to verify_url
The user completes Pi Sign-in there. The session expires 10 minutes after creation and can only be used once.
4. Receive the result
Once the user completes (or fails) verification, Auth314 sends a one-time POST to your callback_url:
json
{
"platform_user_id": "123456789",
"guild_id": "987654321",
"verified": true
}See Verification webhook for the full payload shape and delivery semantics.
Don't want to build this yourself?
If your platform is Discord, Auth314's hosted bot already does all of this for you.