API reference / Admin

post/v1/admin/applicants

Create an applicant account by hand

Operation
adminCreateApplicant
Authentication
API key

Creates an applicant with **no password** and mails the address a single-use link to choose one, so no password ever passes through an operator. The reason is required and is recorded in the audit log with the key that asked. Redeeming the invitation confirms the address, which is what lets the account sign in afterwards.

Request

Body

emailstringrequired
full_namestring
localestring
reasonstringrequired

Responses

201Applicant created and the invitation queued.
applicantobjectrequired
invitation_email_statusstringrequired
400The request body or query failed validation.
errorobjectrequired
401No key, an unknown key, a revoked key, or a key whose tenant is not active. All four return an identical body on purpose: distinguishing them would let a caller discover which partners we have.
errorobjectrequired
403`projects:write` is required. No partner key is ever issued this scope.
errorobjectrequired
404Not found, or not yours. A resource belonging to another tenant answers 404 rather than 403, because 403 would confirm the record exists.
errorobjectrequired

Example

curl
curl -X POST https://api.haavisa.com/v1/admin/applicants \
  -H "Authorization: Bearer $HAAVISA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "email": "<email>",
    "reason": "<reason>"
  }'

More in Admin

Something unclear? The eligibility guide explains the model behind the answers; the errors guide covers the envelope.