# Verify device binding signature challenge Verifies the signature from a customer's device in order to verify their ownership of the device. To create the signature: 1. Create a hash (SHA256) with the OTP. 2. Sign the hash with the private key. 3. Encode the signature in format. 4. Hex-encode the -formatted signature. 5. Send the signature in the request body. Endpoint: PUT /v1/mfa/challenges/signatures/{id} Version: 1.0 ## Path parameters: - `id` (string, required) ## Request fields (application/json): - `signature` (string) The hex-encoded signature for the challenge. Example: "3045022100bdbebd8ba5e4ea23a4ab3d852cbf0968cbc7319c7c4388e0c54bf34e896d19d802205880fca38bf5450bff73d41c675e1444b8e3c75dc8bf764d5c0e9282bd150ade" - `device_data` (string) Any device-specific string provided by the calling client. Example: "YW55IHN0cmluZyBwcm92aWRlZCBieSB0aGUgY2xpZW50Cg==" ## Response 400 fields (application/json): - `title` (string) Example: "Failed to build pagination headers." - `status` (integer) Example: "400" - `id` (string) Example: "a95f2aaf-4e0c-4d49-8021-8a16a884ed86" - `detail` (string) Example: "Cannot connect to database." - `code` (string) Example: "build_pagination_headers_failure" - `error_code` (string) a static error_code that can be used to identify the error Example: "telephone_number_not_found" ## Response 401 fields (application/json): - `errors` (array) - `errors.status` (integer) - `errors.source` (object) - `errors.source.field` (string) - `errors.source.message` (string) - `errors.code` (string) - `errors.title` (string) - `errors.detail` (string) - `errors.id` (string) Correlation/Request ID ## Response 403 fields (application/json): - `errors` (array) - `errors.status` (integer) - `errors.source` (object) - `errors.source.field` (string) - `errors.source.message` (string) - `errors.code` (string) - `errors.title` (string) - `errors.detail` (string) - `errors.id` (string) Correlation/Request ID ## Response 404 fields (application/json): - `title` (string) Example: "Model Not Found" - `status` (integer) Example: "404" - `id` (string) Example: "a95f2aaf-4e0c-4d49-8021-8a16a884ed86" - `detail` (string) Example: "Couldn't find 'Account' for id 'DE24112233445566'." - `code` (string) Example: "model_not_found" - `error_code` (string) a static error_code that can be used to identify the error Example: "not_found" ## Response 409 fields (application/json): - `errors` (array) - `errors.status` (integer) - `errors.source` (object) - `errors.source.field` (string) - `errors.source.message` (string) - `errors.code` (string) - `errors.title` (string) - `errors.detail` (string) - `errors.id` (string) Correlation/Request ID ## Response 500 fields (application/json): - `id` (string) Example: "e8915041-9d8c-4d96-9dd1-04e8522ecdbf" - `status` (integer) Example: "500" - `code` (string) Example: "generic_error" - `title` (string) Example: "Generic Error" - `detail` (string) Example: "There was an error." - `error_code` (string) a static error_code that can be used to identify the error Example: "generic_error"