Documentation Index
Fetch the complete documentation index at: https://docs.yoid.me/llms.txt
Use this file to discover all available pages before exploring further.
Overview
The first step in the issuance workflow is creating a youth account. This provisions an identity in the Consumers realm and initialises a wallet tenant — giving the youth a place to receive and store credentials.Endpoint
Request
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
email | string | No* | Youth’s email address |
username | string | No* | Username (alphanumeric, ., -, _) |
firstName | string | No | Youth’s first name |
lastName | string | No | Youth’s last name |
externalIdentifier | string | No | Your system’s identifier for this youth |
Response
The response differs depending on whether the youth is new or already exists.New User — HTTP 201 Created
| Field | Description |
|---|---|
email | The youth’s email address |
username | The assigned username |
tempPassword | A temporary password for the youth |
Existing User — HTTP 201 Created
If the youth already has an account, the API still returns201 but with an empty tempPassword. This is not an error — proceed directly to credential issuance.
Idempotency
This endpoint is idempotent for the same email — it won’t create duplicate accounts. It returns201 in both new and existing cases.
A 409 Conflict is returned if the username is already taken by a different email, or there’s a mismatch between the provided email and username.

