Create an account (agent signup)

Create a MyOTP.App account without a browser. No authentication. The 201 body carries the API key exactly once; store it and send it as X-API-Key on every later request.

Rules: no trial credits and no phone verification. The balance starts at zero, so the account can send nothing until it is topped up with POST /v1/topup. USDC top-ups work immediately; card top-ups are offered only after the account email is confirmed. The IP allowlist is open ("*") for agent accounts. Five registrations per IP address per 24 hours. The human signup at https://myotp.app/sign-up is unchanged: 15 free credits, email and phone verification.

Email confirmation: the address receives "Confirm your MyOTP.App account email" from raya@myotp.app with a link to /v1/agent/verify-email. A human has to open it and press Confirm; the agent cannot confirm on the user's behalf. The link is single use and valid for 24 hours.

Agent flow: register, save the api_key, tell the human to click the email link (optional, only needed for cards), GET /v1/topup/quote, POST /v1/topup and pay the 402 (USDC works without the email step), then POST /generate_otp as usual. A 403 "Insufficient balance" on any send means: top up again.

post/v1/agent/register

Request

  • Base URL: https://api.myotp.app
  • URL: https://api.myotp.app/v1/agent/register
  • Auth: none declared

Request body

emailstring email required

Account email. Receives the confirmation link.

namestring

Optional account or company name.

Response

Account created. The api_key is shown once.

account_idstring required

Account identifier, "a" followed by 12 hex characters.

emailstring email required
email_verifiedboolean required

True once the human has pressed Confirm on the emailed link. Unlocks card top-ups.

balancenumber required

Credits on the balance. Zero at registration.

plan_idinteger required

The Starter pay-as-you-go pricing table (per-country credits).

statusstring required

Account status, "active" when the key can be used.

docsstring uri
api_keystring required

Shown once, in this response only. Send it as the X-API-Key header.

api_key_notestring
verification_email_sentboolean

Whether the confirmation email was queued.

Changes