Create a user​
Create a new user with an optional data schema.
Request Body required
- Array [
- gigi-giraffe@zitadel.com (unique across organizations)
- gigi-giraffe (unique only inside the ZITADEL organization)
- ]
Possible values: non-empty
and <= 200 characters
Optionally set a unique identifier of the user. If unset, ZITADEL will take care of it.
organization object required
Set the organization the user belongs to.
authenticators object
Set the initial authenticators of the user.
usernames object[]
Possible values: non-empty
and <= 200 characters
Set the user's username. This will be used for identification during authentication.
By default username must be unique across all organizations in an instance. This option allow to restrict the uniqueness to the user's own organization. As a result, this username can only be used if the authentication is limited to the corresponding organization.
This can be useful if you provide multiple usernames for a single user, where one if specific to your organization, e.g.:
password object
Possible values: non-empty
and <= 200 characters
Provide the plain text password. ZITADEL will take care to store it in a secure way (hash).
Possible values: non-empty
and <= 200 characters
Encoded hash of a password in Modular Crypt Format: https://zitadel.com/docs/concepts/architecture/secrets#hashed-secrets.
Provide if the user needs to change the password on the next use.
contact object
Set the contact information (email, phone) for the user.
email object
Possible values: non-empty
and <= 200 characters
Set the email address.
sendCode object
Let ZITADEL send the link to the user via email.
Possible values: non-empty
and <= 200 characters
Optionally set a url_template, which will be used in the verification mail sent by ZITADEL to guide the user to your verification page. If no template is set, the default ZITADEL url will be used.
Get the code back to provide it to the user in your preferred mechanism.
Set the email as already verified.
phone object
Possible values: non-empty
and <= 20 characters
Set the user's phone number.
Let ZITADEL send the link to the user via SMS.
Get the code back to provide it to the user in your preferred mechanism.
Set the phone as already verified.
Possible values: non-empty
and <= 200 characters
Define the schema the user's data schema by providing it's ID.
Provide data about the user. It will be validated based on the specified schema.
Request Body required
- Array [
- gigi-giraffe@zitadel.com (unique across organizations)
- gigi-giraffe (unique only inside the ZITADEL organization)
- ]
Possible values: non-empty
and <= 200 characters
Optionally set a unique identifier of the user. If unset, ZITADEL will take care of it.
organization object required
Set the organization the user belongs to.
authenticators object
Set the initial authenticators of the user.
usernames object[]
Possible values: non-empty
and <= 200 characters
Set the user's username. This will be used for identification during authentication.
By default username must be unique across all organizations in an instance. This option allow to restrict the uniqueness to the user's own organization. As a result, this username can only be used if the authentication is limited to the corresponding organization.
This can be useful if you provide multiple usernames for a single user, where one if specific to your organization, e.g.:
password object
Possible values: non-empty
and <= 200 characters
Provide the plain text password. ZITADEL will take care to store it in a secure way (hash).
Possible values: non-empty
and <= 200 characters
Encoded hash of a password in Modular Crypt Format: https://zitadel.com/docs/concepts/architecture/secrets#hashed-secrets.
Provide if the user needs to change the password on the next use.
contact object
Set the contact information (email, phone) for the user.
email object
Possible values: non-empty
and <= 200 characters
Set the email address.
sendCode object
Let ZITADEL send the link to the user via email.
Possible values: non-empty
and <= 200 characters
Optionally set a url_template, which will be used in the verification mail sent by ZITADEL to guide the user to your verification page. If no template is set, the default ZITADEL url will be used.
Get the code back to provide it to the user in your preferred mechanism.
Set the email as already verified.
phone object
Possible values: non-empty
and <= 20 characters
Set the user's phone number.
Let ZITADEL send the link to the user via SMS.
Get the code back to provide it to the user in your preferred mechanism.
Set the phone as already verified.
Possible values: non-empty
and <= 200 characters
Define the schema the user's data schema by providing it's ID.
Provide data about the user. It will be validated based on the specified schema.
Request Body required
- Array [
- gigi-giraffe@zitadel.com (unique across organizations)
- gigi-giraffe (unique only inside the ZITADEL organization)
- ]
Possible values: non-empty
and <= 200 characters
Optionally set a unique identifier of the user. If unset, ZITADEL will take care of it.
organization object required
Set the organization the user belongs to.
authenticators object
Set the initial authenticators of the user.
usernames object[]
Possible values: non-empty
and <= 200 characters
Set the user's username. This will be used for identification during authentication.
By default username must be unique across all organizations in an instance. This option allow to restrict the uniqueness to the user's own organization. As a result, this username can only be used if the authentication is limited to the corresponding organization.
This can be useful if you provide multiple usernames for a single user, where one if specific to your organization, e.g.:
password object
Possible values: non-empty
and <= 200 characters
Provide the plain text password. ZITADEL will take care to store it in a secure way (hash).
Possible values: non-empty
and <= 200 characters
Encoded hash of a password in Modular Crypt Format: https://zitadel.com/docs/concepts/architecture/secrets#hashed-secrets.
Provide if the user needs to change the password on the next use.
contact object
Set the contact information (email, phone) for the user.
email object
Possible values: non-empty
and <= 200 characters
Set the email address.
sendCode object
Let ZITADEL send the link to the user via email.
Possible values: non-empty
and <= 200 characters
Optionally set a url_template, which will be used in the verification mail sent by ZITADEL to guide the user to your verification page. If no template is set, the default ZITADEL url will be used.
Get the code back to provide it to the user in your preferred mechanism.
Set the email as already verified.
phone object
Possible values: non-empty
and <= 20 characters
Set the user's phone number.
Let ZITADEL send the link to the user via SMS.
Get the code back to provide it to the user in your preferred mechanism.
Set the phone as already verified.
Possible values: non-empty
and <= 200 characters
Define the schema the user's data schema by providing it's ID.
Provide data about the user. It will be validated based on the specified schema.
- 200
- 201
- 403
- 404
- default
A successful response.
Schema
details object
on read: the sequence of the last event reduced by the projection
on manipulation: the timestamp of the event(s) added by the manipulation
on read: the timestamp of the last event reduced by the projection
on manipulation: the timestamp of the event(s) added by the manipulation
The email code will be set if a contact email was set with a return_code verification option.
The phone code will be set if a contact phone was set with a return_code verification option.
{
"userId": "string",
"details": {
"sequence": "2",
"changeDate": "2024-05-24T19:39:27.703Z",
"resourceOwner": "69629023906488334"
},
"emailCode": "SKJd342k",
"phoneCode": "IFi39dk2"
}
Schema
details object
on read: the sequence of the last event reduced by the projection
on manipulation: the timestamp of the event(s) added by the manipulation
on read: the timestamp of the last event reduced by the projection
on manipulation: the timestamp of the event(s) added by the manipulation
The email code will be set if a contact email was set with a return_code verification option.
The phone code will be set if a contact phone was set with a return_code verification option.
{
"userId": "string",
"details": {
"sequence": "2",
"changeDate": "2024-05-24T19:39:27.703Z",
"resourceOwner": "69629023906488334"
},
"emailCode": "SKJd342k",
"phoneCode": "IFi39dk2"
}
Schema
details object
on read: the sequence of the last event reduced by the projection
on manipulation: the timestamp of the event(s) added by the manipulation
on read: the timestamp of the last event reduced by the projection
on manipulation: the timestamp of the event(s) added by the manipulation
The email code will be set if a contact email was set with a return_code verification option.
The phone code will be set if a contact phone was set with a return_code verification option.
{
"userId": "string",
"details": {
"sequence": "2",
"changeDate": "2024-05-24T19:39:27.704Z",
"resourceOwner": "69629023906488334"
},
"emailCode": "SKJd342k",
"phoneCode": "IFi39dk2"
}
User successfully created
Schema
details object
on read: the sequence of the last event reduced by the projection
on manipulation: the timestamp of the event(s) added by the manipulation
on read: the timestamp of the last event reduced by the projection
on manipulation: the timestamp of the event(s) added by the manipulation
The email code will be set if a contact email was set with a return_code verification option.
The phone code will be set if a contact phone was set with a return_code verification option.
{
"userId": "string",
"details": {
"sequence": "2",
"changeDate": "2024-05-24T19:39:27.704Z",
"resourceOwner": "69629023906488334"
},
"emailCode": "SKJd342k",
"phoneCode": "IFi39dk2"
}
Schema
details object
on read: the sequence of the last event reduced by the projection
on manipulation: the timestamp of the event(s) added by the manipulation
on read: the timestamp of the last event reduced by the projection
on manipulation: the timestamp of the event(s) added by the manipulation
The email code will be set if a contact email was set with a return_code verification option.
The phone code will be set if a contact phone was set with a return_code verification option.
{
"userId": "string",
"details": {
"sequence": "2",
"changeDate": "2024-05-24T19:39:27.704Z",
"resourceOwner": "69629023906488334"
},
"emailCode": "SKJd342k",
"phoneCode": "IFi39dk2"
}
Schema
details object
on read: the sequence of the last event reduced by the projection
on manipulation: the timestamp of the event(s) added by the manipulation
on read: the timestamp of the last event reduced by the projection
on manipulation: the timestamp of the event(s) added by the manipulation
The email code will be set if a contact email was set with a return_code verification option.
The phone code will be set if a contact phone was set with a return_code verification option.
{
"userId": "string",
"details": {
"sequence": "2",
"changeDate": "2024-05-24T19:39:27.704Z",
"resourceOwner": "69629023906488334"
},
"emailCode": "SKJd342k",
"phoneCode": "IFi39dk2"
}
Returned when the user does not have permission to access the resource.
Schema
- Array [
- ]
details object[]
{
"code": 0,
"message": "string",
"details": [
{
"@type": "string"
}
]
}
Schema
- Array [
- ]
details object[]
{
"code": 0,
"message": "string",
"details": [
{
"@type": "string"
}
]
}
Schema
- Array [
- ]
details object[]
{
"code": 0,
"message": "string",
"details": [
{
"@type": "string"
}
]
}
Returned when the resource does not exist.
Schema
- Array [
- ]
details object[]
{
"code": 0,
"message": "string",
"details": [
{
"@type": "string"
}
]
}
Schema
- Array [
- ]
details object[]
{
"code": 0,
"message": "string",
"details": [
{
"@type": "string"
}
]
}
Schema
- Array [
- ]
details object[]
{
"code": 0,
"message": "string",
"details": [
{
"@type": "string"
}
]
}
An unexpected error response.
Schema
- Array [
- ]
details object[]
{
"code": 0,
"message": "string",
"details": [
{
"@type": "string"
}
]
}
Schema
- Array [
- ]
details object[]
{
"code": 0,
"message": "string",
"details": [
{
"@type": "string"
}
]
}
Schema
- Array [
- ]
details object[]
{
"code": 0,
"message": "string",
"details": [
{
"@type": "string"
}
]
}