Set contact email​
Add or update the contact email address of a user. If the email is not passed as verified, a verification code will be generated, which can be either returned or will be sent to the user by email.
Path Parameters
userId string required
unique identifier of the user.
application/json
application/grpc
application/grpc-web+proto
Request Body required
email object
Request Body required
email object
Request Body required
email object
Responses
- 200
- 403
- 404
- default
Email successfully set
application/json
application/grpc
application/grpc-web+proto
Schema
Example (from schema)
Schema
details object
verificationCode string
The verification code will be set if a contact email was set with a return_code verification option.
{
"details": {
"sequence": "2",
"changeDate": "2024-06-17T09:46:05.265Z",
"resourceOwner": "69629023906488334"
},
"verificationCode": "SKJd342k"
}
Schema
Example (from schema)
Schema
details object
verificationCode string
The verification code will be set if a contact email was set with a return_code verification option.
{
"details": {
"sequence": "2",
"changeDate": "2024-06-17T09:46:05.265Z",
"resourceOwner": "69629023906488334"
},
"verificationCode": "SKJd342k"
}
Schema
Example (from schema)
Schema
details object
verificationCode string
The verification code will be set if a contact email was set with a return_code verification option.
{
"details": {
"sequence": "2",
"changeDate": "2024-06-17T09:46:05.265Z",
"resourceOwner": "69629023906488334"
},
"verificationCode": "SKJd342k"
}
Returned when the user does not have permission to access the resource.
application/json
application/grpc
application/grpc-web+proto
Schema
Example (from schema)
Schema
code int32
message string
details object[]
{
"code": 0,
"message": "string",
"details": [
{
"@type": "string"
}
]
}
Schema
Example (from schema)
Schema
code int32
message string
details object[]
{
"code": 0,
"message": "string",
"details": [
{
"@type": "string"
}
]
}
Schema
Example (from schema)
Schema
code int32
message string
details object[]
{
"code": 0,
"message": "string",
"details": [
{
"@type": "string"
}
]
}
Returned when the resource does not exist.
application/json
application/grpc
application/grpc-web+proto
Schema
Example (from schema)
Schema
code int32
message string
details object[]
{
"code": 0,
"message": "string",
"details": [
{
"@type": "string"
}
]
}
Schema
Example (from schema)
Schema
code int32
message string
details object[]
{
"code": 0,
"message": "string",
"details": [
{
"@type": "string"
}
]
}
Schema
Example (from schema)
Schema
code int32
message string
details object[]
{
"code": 0,
"message": "string",
"details": [
{
"@type": "string"
}
]
}
An unexpected error response.
application/json
application/grpc
application/grpc-web+proto
Schema
Example (from schema)
Schema
code int32
message string
details object[]
{
"code": 0,
"message": "string",
"details": [
{
"@type": "string"
}
]
}
Schema
Example (from schema)
Schema
code int32
message string
details object[]
{
"code": 0,
"message": "string",
"details": [
{
"@type": "string"
}
]
}
Schema
Example (from schema)
Schema
code int32
message string
details object[]
{
"code": 0,
"message": "string",
"details": [
{
"@type": "string"
}
]
}
PUT /v3alpha/users/:userId/email
Authorization
name: OAuth2type: oauth2scopes:openid,urn:zitadel:iam:org:project:id:zitadel:aud
flows: { "authorizationCode": { "authorizationUrl": "$CUSTOM-DOMAIN/oauth/v2/authorize", "tokenUrl": "$CUSTOM-DOMAIN/oauth/v2/token", "scopes": { "openid": "openid", "urn:zitadel:iam:org:project:id:zitadel:aud": "urn:zitadel:iam:org:project:id:zitadel:aud" } } }
Request
Request
curl / cURL
curl -L -X PUT 'https://$CUSTOM-DOMAIN/v3alpha/users/:userId/email' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <TOKEN>' \
--data-raw '{
"email": {
"address": "mini@mouse.com",
"sendCode": {
"urlTemplate": "https://example.com/email/verify?userID={{.UserID}}&code={{.Code}}&orgID={{.OrgID}}"
},
"returnCode": {},
"isVerified": true
}
}'
python / requests
curl -L -X PUT 'https://$CUSTOM-DOMAIN/v3alpha/users/:userId/email' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <TOKEN>' \
--data-raw '{
"email": {
"address": "mini@mouse.com",
"sendCode": {
"urlTemplate": "https://example.com/email/verify?userID={{.UserID}}&code={{.Code}}&orgID={{.OrgID}}"
},
"returnCode": {},
"isVerified": true
}
}'
go / native
curl -L -X PUT 'https://$CUSTOM-DOMAIN/v3alpha/users/:userId/email' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <TOKEN>' \
--data-raw '{
"email": {
"address": "mini@mouse.com",
"sendCode": {
"urlTemplate": "https://example.com/email/verify?userID={{.UserID}}&code={{.Code}}&orgID={{.OrgID}}"
},
"returnCode": {},
"isVerified": true
}
}'
nodejs / axios
curl -L -X PUT 'https://$CUSTOM-DOMAIN/v3alpha/users/:userId/email' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <TOKEN>' \
--data-raw '{
"email": {
"address": "mini@mouse.com",
"sendCode": {
"urlTemplate": "https://example.com/email/verify?userID={{.UserID}}&code={{.Code}}&orgID={{.OrgID}}"
},
"returnCode": {},
"isVerified": true
}
}'
ruby / Net::HTTP
curl -L -X PUT 'https://$CUSTOM-DOMAIN/v3alpha/users/:userId/email' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <TOKEN>' \
--data-raw '{
"email": {
"address": "mini@mouse.com",
"sendCode": {
"urlTemplate": "https://example.com/email/verify?userID={{.UserID}}&code={{.Code}}&orgID={{.OrgID}}"
},
"returnCode": {},
"isVerified": true
}
}'
csharp / RestSharp
curl -L -X PUT 'https://$CUSTOM-DOMAIN/v3alpha/users/:userId/email' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <TOKEN>' \
--data-raw '{
"email": {
"address": "mini@mouse.com",
"sendCode": {
"urlTemplate": "https://example.com/email/verify?userID={{.UserID}}&code={{.Code}}&orgID={{.OrgID}}"
},
"returnCode": {},
"isVerified": true
}
}'
php / cURL
curl -L -X PUT 'https://$CUSTOM-DOMAIN/v3alpha/users/:userId/email' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <TOKEN>' \
--data-raw '{
"email": {
"address": "mini@mouse.com",
"sendCode": {
"urlTemplate": "https://example.com/email/verify?userID={{.UserID}}&code={{.Code}}&orgID={{.OrgID}}"
},
"returnCode": {},
"isVerified": true
}
}'
java / OkHttp
curl -L -X PUT 'https://$CUSTOM-DOMAIN/v3alpha/users/:userId/email' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <TOKEN>' \
--data-raw '{
"email": {
"address": "mini@mouse.com",
"sendCode": {
"urlTemplate": "https://example.com/email/verify?userID={{.UserID}}&code={{.Code}}&orgID={{.OrgID}}"
},
"returnCode": {},
"isVerified": true
}
}'
powershell / RestMethod
curl -L -X PUT 'https://$CUSTOM-DOMAIN/v3alpha/users/:userId/email' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <TOKEN>' \
--data-raw '{
"email": {
"address": "mini@mouse.com",
"sendCode": {
"urlTemplate": "https://example.com/email/verify?userID={{.UserID}}&code={{.Code}}&orgID={{.OrgID}}"
},
"returnCode": {},
"isVerified": true
}
}'