Menu

Errors

HTTP status codes and the conditions that produce them. Consult this before retrying a failed request.

StatusMeaningTypical cause
400validation failedmissing recipient, invalid email, placeholder email (example.com, your-email, etc.)
410endpoint expired30-day TTL elapsed without submissions
429rate limited or cap reached>10 creations/hour/IP, or 50-submission lifetime cap reached

Example 400

curl -i -X POST https://gopigeon.dev/new -d 'recipient=not-an-email'
# HTTP/1.1 400 Bad Request
# {"error":"validation failed","field":"recipient"}

Retry guidance

  • 400: fix the payload and re-send; the response body names the offending field.
  • 410: create a new endpoint — expired endpoints cannot be resurrected.
  • 429: back off and retry later. The Retry-After header, when present, is authoritative.

Not what you're looking for? See the full surface at /llms.txt.