Tarsana docsDashboard

Create your Tarsana account

Change · POST /v1/signups · MCP tool signup

Starts a signup for a new tenant, with a tenant ID you choose. Sign up with Google or LinkedIn, and you get an address to visit to confirm who you are (identity_check.authorization_url); sign up with your email address, and we send you a link (sent_to). If the tenant ID is taken or not allowed, you are told now, before any link is sent. Nothing is created until you finish with complete-signup, and you do not need to sign in.

You do not need to sign in.

Parameters

NameInRequiredDescription
identity_providerbodyyesHow you prove who you are: with Google, with LinkedIn, or with your email address. One of google, linkedin, email
tenantbodyyesThe tenant ID you want: lower-case letters, digits, dots, dashes and underscores, up to 64 characters. You cannot change it later, and it should not be your email address
emailbodynoYour email address, if you sign up by email. It becomes your login name

Returns

A JSON object with these keys: signup, identity_provider, tenant, identity_check, sent_to, delivery, expires_at, guarantee, caller_authenticated.

Example request

curl -X POST https://api.tarsana.io/v1/signups \
  -H "Content-Type: application/json" \
  --data '{"identity_provider": "email", "tenant": "acme", "email": "you@example.com"}'

Example response

{
  "signup": "c7e7d896876644cf",
  "identity_provider": "email",
  "tenant": "acme",
  "identity_check": {
    "authorization_url": null
  },
  "sent_to": "you@example.com",
  "delivery": {
    "transport": "smtp",
    "state": "accepted"
  },
  "expires_at": "2026-10-05T02:30:39Z",
  "guarantee": "namespaces are separated, callers are not authenticated",
  "caller_authenticated": false
}

Errors

CodeHTTPWhat it means
invalid_parameter400A value in your request does not have the expected format, for example a submission ID that is not a spec hash. Check the value against the field's description and try again.
tenant_refused400This tenant ID is not allowed, or is not in the expected format. Use a different ID made of lower-case letters, digits, dots, dashes and underscores.
tenant_taken409This tenant ID is already taken. Choose a different ID.
signup_refused400Your signup could not be completed: the link was already used or has expired, your identity was not confirmed, your email domain is not accepted, or this identity already has a login. The response says which; start a new signup, or sign in with your existing login.
signup_not_configured503This way of signing up is not available on this Tarsana deployment. Choose another way to sign up, or contact Tarsana support.
signup_rate_limited429Too many signups were started from your address, or a link was sent to this email address too recently. Wait for the time given in the response, then try again.
signup_delivery_failed502Your signup link could not be sent, so nothing was created. Start the signup again, or sign up with Google or LinkedIn instead.
rate_limited429You sent too many requests in a short time. Wait for the number of seconds in retry_after_seconds, then try again.
surface_fault500Something went wrong on our side. Try again later, and contact Tarsana support if it keeps happening.

View this page as Markdown