Completes the process of recovering a user by adding an authenticator
curl --request POST \
--url https://api.turnkey.com/public/v1/submit/recover_user \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header "X-Stamp: <YOUR_API_KEY.YOUR_API_SECRET>" \
--data '{
"type": "ACTIVITY_TYPE_RECOVER_USER",
"timestampMs": "<string> (e.g., 1745474677472)",
"organizationId": "<string> (Your Organization ID)",
"parameters": {
"authenticator": {
"authenticatorName": "<string>",
"challenge": "<string>",
"attestation": {
"credentialId": "<string>",
"clientDataJson": "<string>",
"attestationObject": "<string>",
"transports": [
"<AUTHENTICATOR_TRANSPORT_BLE>"
]
}
},
"userId": "<string>"
}
}'
{
"activity": {
"id": "<activity-id>",
"status": "ACTIVITY_STATUS_COMPLETED",
"type": "ACTIVITY_TYPE_RECOVER_USER",
"organizationId": "<organization-id>",
"timestampMs": "<timestamp> (e.g., 1745474677472)",
"result": {
"activity": {
"type": "<string>",
"intent": {
"recoverUserIntent": {
"authenticator": {
"authenticatorName": "<string>",
"challenge": "<string>",
"attestation": {
"credentialId": "<string>",
"clientDataJson": "<string>",
"attestationObject": "<string>",
"transports": [
"<AUTHENTICATOR_TRANSPORT_BLE>"
]
}
},
"userId": "<string>"
}
},
"result": {
"recoverUserResult": {
"authenticatorId": [
"<string_element>"
]
}
}
}
}
}
}
Enum options: ACTIVITY_TYPE_RECOVER_USER
Timestamp (in milliseconds) of the request, used to verify liveness of user requests.
Unique identifier for a given Organization.
parameters field
Show details
authenticator field
Show details
attestation field
Show details
The cbor encoded then base64 url encoded id of the credential.
A base64 url encoded payload containing metadata about the signing context and the challenge.
A base64 url encoded payload containing authenticator data and any attestation the webauthn provider chooses.
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 recoverUserIntent object
Show recoverUserIntent details
authenticator field
Show authenticator details
Human-readable name for an Authenticator.
Challenge presented for authentication purposes.
attestation field
Show attestation details
The cbor encoded then base64 url encoded id of the credential.
A base64 url encoded payload containing metadata about the signing context and the challenge.
A base64 url encoded payload containing authenticator data and any attestation the webauthn provider chooses.
The type of authenticator transports.
The result of the activity
Show result details
curl --request POST \
--url https://api.turnkey.com/public/v1/submit/recover_user \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header "X-Stamp: <YOUR_API_KEY.YOUR_API_SECRET>" \
--data '{
"type": "ACTIVITY_TYPE_RECOVER_USER",
"timestampMs": "<string> (e.g., 1745474677472)",
"organizationId": "<string> (Your Organization ID)",
"parameters": {
"authenticator": {
"authenticatorName": "<string>",
"challenge": "<string>",
"attestation": {
"credentialId": "<string>",
"clientDataJson": "<string>",
"attestationObject": "<string>",
"transports": [
"<AUTHENTICATOR_TRANSPORT_BLE>"
]
}
},
"userId": "<string>"
}
}'
{
"activity": {
"id": "<activity-id>",
"status": "ACTIVITY_STATUS_COMPLETED",
"type": "ACTIVITY_TYPE_RECOVER_USER",
"organizationId": "<organization-id>",
"timestampMs": "<timestamp> (e.g., 1745474677472)",
"result": {
"activity": {
"type": "<string>",
"intent": {
"recoverUserIntent": {
"authenticator": {
"authenticatorName": "<string>",
"challenge": "<string>",
"attestation": {
"credentialId": "<string>",
"clientDataJson": "<string>",
"attestationObject": "<string>",
"transports": [
"<AUTHENTICATOR_TRANSPORT_BLE>"
]
}
},
"userId": "<string>"
}
},
"result": {
"recoverUserResult": {
"authenticatorId": [
"<string_element>"
]
}
}
}
}
}
}
Was this page helpful?
curl --request POST \
--url https://api.turnkey.com/public/v1/submit/recover_user \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header "X-Stamp: <YOUR_API_KEY.YOUR_API_SECRET>" \
--data '{
"type": "ACTIVITY_TYPE_RECOVER_USER",
"timestampMs": "<string> (e.g., 1745474677472)",
"organizationId": "<string> (Your Organization ID)",
"parameters": {
"authenticator": {
"authenticatorName": "<string>",
"challenge": "<string>",
"attestation": {
"credentialId": "<string>",
"clientDataJson": "<string>",
"attestationObject": "<string>",
"transports": [
"<AUTHENTICATOR_TRANSPORT_BLE>"
]
}
},
"userId": "<string>"
}
}'
{
"activity": {
"id": "<activity-id>",
"status": "ACTIVITY_STATUS_COMPLETED",
"type": "ACTIVITY_TYPE_RECOVER_USER",
"organizationId": "<organization-id>",
"timestampMs": "<timestamp> (e.g., 1745474677472)",
"result": {
"activity": {
"type": "<string>",
"intent": {
"recoverUserIntent": {
"authenticator": {
"authenticatorName": "<string>",
"challenge": "<string>",
"attestation": {
"credentialId": "<string>",
"clientDataJson": "<string>",
"attestationObject": "<string>",
"transports": [
"<AUTHENTICATOR_TRANSPORT_BLE>"
]
}
},
"userId": "<string>"
}
},
"result": {
"recoverUserResult": {
"authenticatorId": [
"<string_element>"
]
}
}
}
}
}
}
Completes the process of recovering a user by adding an authenticator
curl --request POST \
--url https://api.turnkey.com/public/v1/submit/recover_user \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header "X-Stamp: <YOUR_API_KEY.YOUR_API_SECRET>" \
--data '{
"type": "ACTIVITY_TYPE_RECOVER_USER",
"timestampMs": "<string> (e.g., 1745474677472)",
"organizationId": "<string> (Your Organization ID)",
"parameters": {
"authenticator": {
"authenticatorName": "<string>",
"challenge": "<string>",
"attestation": {
"credentialId": "<string>",
"clientDataJson": "<string>",
"attestationObject": "<string>",
"transports": [
"<AUTHENTICATOR_TRANSPORT_BLE>"
]
}
},
"userId": "<string>"
}
}'
{
"activity": {
"id": "<activity-id>",
"status": "ACTIVITY_STATUS_COMPLETED",
"type": "ACTIVITY_TYPE_RECOVER_USER",
"organizationId": "<organization-id>",
"timestampMs": "<timestamp> (e.g., 1745474677472)",
"result": {
"activity": {
"type": "<string>",
"intent": {
"recoverUserIntent": {
"authenticator": {
"authenticatorName": "<string>",
"challenge": "<string>",
"attestation": {
"credentialId": "<string>",
"clientDataJson": "<string>",
"attestationObject": "<string>",
"transports": [
"<AUTHENTICATOR_TRANSPORT_BLE>"
]
}
},
"userId": "<string>"
}
},
"result": {
"recoverUserResult": {
"authenticatorId": [
"<string_element>"
]
}
}
}
}
}
}
Enum options: ACTIVITY_TYPE_RECOVER_USER
Timestamp (in milliseconds) of the request, used to verify liveness of user requests.
Unique identifier for a given Organization.
parameters field
Show details
authenticator field
Show details
attestation field
Show details
The cbor encoded then base64 url encoded id of the credential.
A base64 url encoded payload containing metadata about the signing context and the challenge.
A base64 url encoded payload containing authenticator data and any attestation the webauthn provider chooses.
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 recoverUserIntent object
Show recoverUserIntent details
authenticator field
Show authenticator details
Human-readable name for an Authenticator.
Challenge presented for authentication purposes.
attestation field
Show attestation details
The cbor encoded then base64 url encoded id of the credential.
A base64 url encoded payload containing metadata about the signing context and the challenge.
A base64 url encoded payload containing authenticator data and any attestation the webauthn provider chooses.
The type of authenticator transports.
The result of the activity
Show result details
curl --request POST \
--url https://api.turnkey.com/public/v1/submit/recover_user \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header "X-Stamp: <YOUR_API_KEY.YOUR_API_SECRET>" \
--data '{
"type": "ACTIVITY_TYPE_RECOVER_USER",
"timestampMs": "<string> (e.g., 1745474677472)",
"organizationId": "<string> (Your Organization ID)",
"parameters": {
"authenticator": {
"authenticatorName": "<string>",
"challenge": "<string>",
"attestation": {
"credentialId": "<string>",
"clientDataJson": "<string>",
"attestationObject": "<string>",
"transports": [
"<AUTHENTICATOR_TRANSPORT_BLE>"
]
}
},
"userId": "<string>"
}
}'
{
"activity": {
"id": "<activity-id>",
"status": "ACTIVITY_STATUS_COMPLETED",
"type": "ACTIVITY_TYPE_RECOVER_USER",
"organizationId": "<organization-id>",
"timestampMs": "<timestamp> (e.g., 1745474677472)",
"result": {
"activity": {
"type": "<string>",
"intent": {
"recoverUserIntent": {
"authenticator": {
"authenticatorName": "<string>",
"challenge": "<string>",
"attestation": {
"credentialId": "<string>",
"clientDataJson": "<string>",
"attestationObject": "<string>",
"transports": [
"<AUTHENTICATOR_TRANSPORT_BLE>"
]
}
},
"userId": "<string>"
}
},
"result": {
"recoverUserResult": {
"authenticatorId": [
"<string_element>"
]
}
}
}
}
}
}
Was this page helpful?
curl --request POST \
--url https://api.turnkey.com/public/v1/submit/recover_user \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header "X-Stamp: <YOUR_API_KEY.YOUR_API_SECRET>" \
--data '{
"type": "ACTIVITY_TYPE_RECOVER_USER",
"timestampMs": "<string> (e.g., 1745474677472)",
"organizationId": "<string> (Your Organization ID)",
"parameters": {
"authenticator": {
"authenticatorName": "<string>",
"challenge": "<string>",
"attestation": {
"credentialId": "<string>",
"clientDataJson": "<string>",
"attestationObject": "<string>",
"transports": [
"<AUTHENTICATOR_TRANSPORT_BLE>"
]
}
},
"userId": "<string>"
}
}'
{
"activity": {
"id": "<activity-id>",
"status": "ACTIVITY_STATUS_COMPLETED",
"type": "ACTIVITY_TYPE_RECOVER_USER",
"organizationId": "<organization-id>",
"timestampMs": "<timestamp> (e.g., 1745474677472)",
"result": {
"activity": {
"type": "<string>",
"intent": {
"recoverUserIntent": {
"authenticator": {
"authenticatorName": "<string>",
"challenge": "<string>",
"attestation": {
"credentialId": "<string>",
"clientDataJson": "<string>",
"attestationObject": "<string>",
"transports": [
"<AUTHENTICATOR_TRANSPORT_BLE>"
]
}
},
"userId": "<string>"
}
},
"result": {
"recoverUserResult": {
"authenticatorId": [
"<string_element>"
]
}
}
}
}
}
}