ReferenceSchemas
CIAM Default Identity Schema
JSON Schema reference for the Person identity model
Source: platform/dev/ciam-kratos/identity.schema.json
Schema $id: https://schemas.ory.sh/presets/kratos/identity.basic.schema.json
Fields
| Field | Type | Format | Required | Ory bindings | Description |
|---|---|---|---|---|---|
traits | object | - | no | - | , |
traits.username | string | - | no | password identifier | Username |
traits.email | string | yes | password identifier, webauthn identifier, totp account_name, verifiable (email), recovery (email) | Email address | |
traits.first_name | string | - | no | - | First name |
traits.last_name | string | - | no | - | Last name |
traits.phone | string | - | no | password identifier | Phone |
Raw schema
{
"$id": "https://schemas.ory.sh/presets/kratos/identity.basic.schema.json",
"title": "Person",
"type": "object",
"properties": {
"traits": {
"type": "object",
"properties": {
"username": {
"title": "Username",
"type": "string",
"minLength": 1,
"maxLength": 20,
"pattern": "^[a-z0-9]+$",
"ory.sh/kratos": {
"credentials": {
"password": {
"identifier": true
}
}
}
},
"email": {
"type": "string",
"format": "email",
"title": "Email address",
"ory.sh/kratos": {
"credentials": {
"password": {
"identifier": true
},
"webauthn": {
"identifier": true
},
"totp": {
"account_name": true
}
},
"recovery": {
"via": "email"
},
"verification": {
"via": "email"
}
},
"maxLength": 320
},
"first_name": {
"type": "string",
"title": "First name",
"maxLength": 256
},
"last_name": {
"type": "string",
"title": "Last name",
"maxLength": 256
},
"phone": {
"title": "Phone",
"type": "string",
"pattern": "^(\\+?\\d{1,3})?[-.\\s]?(\\(?\\d{1,4}\\)?)?[-.\\s]?\\d{1,4}[-.\\s]?\\d{1,4}[-.\\s]?\\d{1,9}$",
"ory.sh/kratos": {
"credentials": {
"password": {
"identifier": true
}
}
}
}
},
"required": [
"email"
],
"additionalProperties": false
}
}
}Generated from ../platform/dev/ciam-kratos/identity.schema.json at build time.