Skip to main content
POST
/
api
/
v1
/
auth
/
login
Login
curl --request POST \
  --url https://roughy-api-staging.fly.dev/api/v1/auth/login \
  --header 'Content-Type: application/json' \
  --data '
{
  "email": "alex@example.com",
  "password": "correct-horse-battery-staple"
}
'
{
  "user_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "email": "<string>",
  "email_verified_at": "2023-11-07T05:31:56Z",
  "api_key": "<string>",
  "api_key_expires_at": "2023-11-07T05:31:56Z"
}

Documentation Index

Fetch the complete documentation index at: https://docs.roughy.ai/llms.txt

Use this file to discover all available pages before exploring further.

Body

application/json
email
string<email>
required
password
string
required
Required string length: 1 - 128

Response

Successful Response

Returned on successful login.

api_key is a fresh rk_* key with a 24h sliding expiry, ready to be sent as Authorization: Bearer ... (programmatic clients) or stored as an HttpOnly cookie (the browser flow does this for the user automatically — see Set-Cookie on the login response).

email_verified_at is forwarded so the UI can render the "verify your email" banner without an extra round-trip.

user_id
string<uuid>
required
email
string
required
email_verified_at
string<date-time> | null
required
api_key
string
required
api_key_expires_at
string<date-time>
required