grandline-auth

Signup

Start the magic-link signup flow.

  1. Validate the email against the Company-Email policy (G-014).
  2. Idempotency: if this email already has an unexpired attempt (within the 15-minute TTL), do nothing and return the same success response — never spam a second email.
  3. Otherwise: generate a fresh 32-byte token, store its SHA-256 hash in Postgres (durable) and Redis (hot lookup with TTL), and dispatch the email.

Always returns the same success message regardless of whether a new email was sent — keeps the response side-channel-free for enumeration attempts.

post/api/v1/auth/signup

Request

  • Base URL: https://grandline.luzomi.com
  • URL: https://grandline.luzomi.com/api/v1/auth/signup
  • Auth: none declared

Request body

emailstring required

Company email (not generic, not a free provider)

company_namestring required
what_buildingstring nullable

Optional: one-line answer to 'what are you building?'

Response

Successful Response

messagestring required

Changes

No recorded changes to this operation across all 1 revision of this API.