Initializes a new email recovery
curl --request POST \
--url https://api.turnkey.com/public/v1/submit/init_user_email_recovery \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header "X-Stamp: <YOUR_API_KEY.YOUR_API_SECRET>" \
--data '{
"type": "ACTIVITY_TYPE_INIT_USER_EMAIL_RECOVERY",
"timestampMs": "<string> (e.g. 1746736509954)",
"organizationId": "<string> (Your Organization ID)",
"parameters": {
"email": "<string>",
"targetPublicKey": "<string>",
"expirationSeconds": "<string>",
"emailCustomization": {
"appName": "<string>",
"logoUrl": "<string>",
"magicLinkTemplate": "<string>",
"templateVariables": "<string>",
"templateId": "<string>"
}
}
}'
{
"activity": {
"id": "<activity-id>",
"status": "ACTIVITY_STATUS_COMPLETED",
"type": "ACTIVITY_TYPE_INIT_USER_EMAIL_RECOVERY",
"organizationId": "<organization-id>",
"timestampMs": "<timestamp> (e.g. 1746736509954)",
"result": {
"activity": {
"type": "<string>",
"intent": {
"initUserEmailRecoveryIntent": {
"email": "<string>",
"targetPublicKey": "<string>",
"expirationSeconds": "<string>",
"emailCustomization": {
"appName": "<string>",
"logoUrl": "<string>",
"magicLinkTemplate": "<string>",
"templateVariables": "<string>",
"templateId": "<string>"
}
}
},
"result": {
"initUserEmailRecoveryResult": {
"userId": "<string>"
}
}
}
}
}
}
Enum options: ACTIVITY_TYPE_INIT_USER_EMAIL_RECOVERY
Timestamp (in milliseconds) of the request, used to verify liveness of user requests.
Unique identifier for a given Organization.
parameters field
Show details
Client-side public key generated by the user, to which the recovery bundle will be encrypted.
Expiration window (in seconds) indicating how long the recovery credential is valid for. If not provided, a default of 15 minutes will be used.
emailCustomization field
Show details
A URL pointing to a logo in PNG format. Note this logo will be resized to fit into 340px x 124px.
A template for the URL to be used in a magic link button, e.g. https://dapp.xyz/%s
. The auth bundle will be interpolated into the %s
.
JSON object containing key/value pairs to be used with custom templates.
A successful response returns the following fields:
The activity object containing type, intent, and result
Show activity details
The intent of the activity
Show intent details
The initUserEmailRecoveryIntent object
Show initUserEmailRecoveryIntent details
Client-side public key generated by the user, to which the recovery bundle will be encrypted.
Expiration window (in seconds) indicating how long the recovery credential is valid for. If not provided, a default of 15 minutes will be used.
emailCustomization field
Show emailCustomization details
The name of the application.
A URL pointing to a logo in PNG format. Note this logo will be resized to fit into 340px x 124px.
A template for the URL to be used in a magic link button, e.g. https://dapp.xyz/%s
. The auth bundle will be interpolated into the %s
.
JSON object containing key/value pairs to be used with custom templates.
curl --request POST \
--url https://api.turnkey.com/public/v1/submit/init_user_email_recovery \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header "X-Stamp: <YOUR_API_KEY.YOUR_API_SECRET>" \
--data '{
"type": "ACTIVITY_TYPE_INIT_USER_EMAIL_RECOVERY",
"timestampMs": "<string> (e.g. 1746736509954)",
"organizationId": "<string> (Your Organization ID)",
"parameters": {
"email": "<string>",
"targetPublicKey": "<string>",
"expirationSeconds": "<string>",
"emailCustomization": {
"appName": "<string>",
"logoUrl": "<string>",
"magicLinkTemplate": "<string>",
"templateVariables": "<string>",
"templateId": "<string>"
}
}
}'
{
"activity": {
"id": "<activity-id>",
"status": "ACTIVITY_STATUS_COMPLETED",
"type": "ACTIVITY_TYPE_INIT_USER_EMAIL_RECOVERY",
"organizationId": "<organization-id>",
"timestampMs": "<timestamp> (e.g. 1746736509954)",
"result": {
"activity": {
"type": "<string>",
"intent": {
"initUserEmailRecoveryIntent": {
"email": "<string>",
"targetPublicKey": "<string>",
"expirationSeconds": "<string>",
"emailCustomization": {
"appName": "<string>",
"logoUrl": "<string>",
"magicLinkTemplate": "<string>",
"templateVariables": "<string>",
"templateId": "<string>"
}
}
},
"result": {
"initUserEmailRecoveryResult": {
"userId": "<string>"
}
}
}
}
}
}
Was this page helpful?
curl --request POST \
--url https://api.turnkey.com/public/v1/submit/init_user_email_recovery \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header "X-Stamp: <YOUR_API_KEY.YOUR_API_SECRET>" \
--data '{
"type": "ACTIVITY_TYPE_INIT_USER_EMAIL_RECOVERY",
"timestampMs": "<string> (e.g. 1746736509954)",
"organizationId": "<string> (Your Organization ID)",
"parameters": {
"email": "<string>",
"targetPublicKey": "<string>",
"expirationSeconds": "<string>",
"emailCustomization": {
"appName": "<string>",
"logoUrl": "<string>",
"magicLinkTemplate": "<string>",
"templateVariables": "<string>",
"templateId": "<string>"
}
}
}'
{
"activity": {
"id": "<activity-id>",
"status": "ACTIVITY_STATUS_COMPLETED",
"type": "ACTIVITY_TYPE_INIT_USER_EMAIL_RECOVERY",
"organizationId": "<organization-id>",
"timestampMs": "<timestamp> (e.g. 1746736509954)",
"result": {
"activity": {
"type": "<string>",
"intent": {
"initUserEmailRecoveryIntent": {
"email": "<string>",
"targetPublicKey": "<string>",
"expirationSeconds": "<string>",
"emailCustomization": {
"appName": "<string>",
"logoUrl": "<string>",
"magicLinkTemplate": "<string>",
"templateVariables": "<string>",
"templateId": "<string>"
}
}
},
"result": {
"initUserEmailRecoveryResult": {
"userId": "<string>"
}
}
}
}
}
}
Initializes a new email recovery
curl --request POST \
--url https://api.turnkey.com/public/v1/submit/init_user_email_recovery \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header "X-Stamp: <YOUR_API_KEY.YOUR_API_SECRET>" \
--data '{
"type": "ACTIVITY_TYPE_INIT_USER_EMAIL_RECOVERY",
"timestampMs": "<string> (e.g. 1746736509954)",
"organizationId": "<string> (Your Organization ID)",
"parameters": {
"email": "<string>",
"targetPublicKey": "<string>",
"expirationSeconds": "<string>",
"emailCustomization": {
"appName": "<string>",
"logoUrl": "<string>",
"magicLinkTemplate": "<string>",
"templateVariables": "<string>",
"templateId": "<string>"
}
}
}'
{
"activity": {
"id": "<activity-id>",
"status": "ACTIVITY_STATUS_COMPLETED",
"type": "ACTIVITY_TYPE_INIT_USER_EMAIL_RECOVERY",
"organizationId": "<organization-id>",
"timestampMs": "<timestamp> (e.g. 1746736509954)",
"result": {
"activity": {
"type": "<string>",
"intent": {
"initUserEmailRecoveryIntent": {
"email": "<string>",
"targetPublicKey": "<string>",
"expirationSeconds": "<string>",
"emailCustomization": {
"appName": "<string>",
"logoUrl": "<string>",
"magicLinkTemplate": "<string>",
"templateVariables": "<string>",
"templateId": "<string>"
}
}
},
"result": {
"initUserEmailRecoveryResult": {
"userId": "<string>"
}
}
}
}
}
}
Enum options: ACTIVITY_TYPE_INIT_USER_EMAIL_RECOVERY
Timestamp (in milliseconds) of the request, used to verify liveness of user requests.
Unique identifier for a given Organization.
parameters field
Show details
Client-side public key generated by the user, to which the recovery bundle will be encrypted.
Expiration window (in seconds) indicating how long the recovery credential is valid for. If not provided, a default of 15 minutes will be used.
emailCustomization field
Show details
A URL pointing to a logo in PNG format. Note this logo will be resized to fit into 340px x 124px.
A template for the URL to be used in a magic link button, e.g. https://dapp.xyz/%s
. The auth bundle will be interpolated into the %s
.
JSON object containing key/value pairs to be used with custom templates.
A successful response returns the following fields:
The activity object containing type, intent, and result
Show activity details
The intent of the activity
Show intent details
The initUserEmailRecoveryIntent object
Show initUserEmailRecoveryIntent details
Client-side public key generated by the user, to which the recovery bundle will be encrypted.
Expiration window (in seconds) indicating how long the recovery credential is valid for. If not provided, a default of 15 minutes will be used.
emailCustomization field
Show emailCustomization details
The name of the application.
A URL pointing to a logo in PNG format. Note this logo will be resized to fit into 340px x 124px.
A template for the URL to be used in a magic link button, e.g. https://dapp.xyz/%s
. The auth bundle will be interpolated into the %s
.
JSON object containing key/value pairs to be used with custom templates.
curl --request POST \
--url https://api.turnkey.com/public/v1/submit/init_user_email_recovery \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header "X-Stamp: <YOUR_API_KEY.YOUR_API_SECRET>" \
--data '{
"type": "ACTIVITY_TYPE_INIT_USER_EMAIL_RECOVERY",
"timestampMs": "<string> (e.g. 1746736509954)",
"organizationId": "<string> (Your Organization ID)",
"parameters": {
"email": "<string>",
"targetPublicKey": "<string>",
"expirationSeconds": "<string>",
"emailCustomization": {
"appName": "<string>",
"logoUrl": "<string>",
"magicLinkTemplate": "<string>",
"templateVariables": "<string>",
"templateId": "<string>"
}
}
}'
{
"activity": {
"id": "<activity-id>",
"status": "ACTIVITY_STATUS_COMPLETED",
"type": "ACTIVITY_TYPE_INIT_USER_EMAIL_RECOVERY",
"organizationId": "<organization-id>",
"timestampMs": "<timestamp> (e.g. 1746736509954)",
"result": {
"activity": {
"type": "<string>",
"intent": {
"initUserEmailRecoveryIntent": {
"email": "<string>",
"targetPublicKey": "<string>",
"expirationSeconds": "<string>",
"emailCustomization": {
"appName": "<string>",
"logoUrl": "<string>",
"magicLinkTemplate": "<string>",
"templateVariables": "<string>",
"templateId": "<string>"
}
}
},
"result": {
"initUserEmailRecoveryResult": {
"userId": "<string>"
}
}
}
}
}
}
Was this page helpful?
curl --request POST \
--url https://api.turnkey.com/public/v1/submit/init_user_email_recovery \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header "X-Stamp: <YOUR_API_KEY.YOUR_API_SECRET>" \
--data '{
"type": "ACTIVITY_TYPE_INIT_USER_EMAIL_RECOVERY",
"timestampMs": "<string> (e.g. 1746736509954)",
"organizationId": "<string> (Your Organization ID)",
"parameters": {
"email": "<string>",
"targetPublicKey": "<string>",
"expirationSeconds": "<string>",
"emailCustomization": {
"appName": "<string>",
"logoUrl": "<string>",
"magicLinkTemplate": "<string>",
"templateVariables": "<string>",
"templateId": "<string>"
}
}
}'
{
"activity": {
"id": "<activity-id>",
"status": "ACTIVITY_STATUS_COMPLETED",
"type": "ACTIVITY_TYPE_INIT_USER_EMAIL_RECOVERY",
"organizationId": "<organization-id>",
"timestampMs": "<timestamp> (e.g. 1746736509954)",
"result": {
"activity": {
"type": "<string>",
"intent": {
"initUserEmailRecoveryIntent": {
"email": "<string>",
"targetPublicKey": "<string>",
"expirationSeconds": "<string>",
"emailCustomization": {
"appName": "<string>",
"logoUrl": "<string>",
"magicLinkTemplate": "<string>",
"templateVariables": "<string>",
"templateId": "<string>"
}
}
},
"result": {
"initUserEmailRecoveryResult": {
"userId": "<string>"
}
}
}
}
}
}