Cannot create a new TOTP for the specified user since the user already has an active TOTP. Users may only have one active TOTP at a time.
400 errors
active_totp_exists
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "active_totp_exists",
"error_message": "Cannot create a new TOTP for the specified user since the user already has an active TOTP. Users may only have one active TOTP at a time.",
"error_url": "https://stytch.com/docs/api/errors/400#active_totp_exists"
}
allow_list_max_exceeded
The number of user methods registered to the allow list has exceeded the maximum of 500.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "allow_list_max_exceeded",
"error_message": "The number of user methods registered to the allow list has exceeded the maximum of 500.",
"error_url": "https://stytch.com/docs/api/errors/400#allow_list_max_exceeded"
}
apple_oauth_config_not_found
The Apple OAuth config was not found.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "apple_oauth_config_not_found",
"error_message": "The Apple OAuth config was not found.",
"error_url": "https://stytch.com/docs/api/errors/400#apple_oauth_config_not_found"
}
argon_2_key_length_mismatch
The key_length value doesn't match the length of the provided hash.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "argon_2_key_length_mismatch",
"error_message": "The key_length value doesn't match the length of the provided hash.",
"error_url": "https://stytch.com/docs/api/errors/400#argon_2_key_length_mismatch"
}
bad_app_bundle_for_stytch_sdk
This app bundle ID has not been registered as an allowed app for the Stytch SDK. Please add it here: https://stytch.com/dashboard/sdk-configuration
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "bad_app_bundle_for_stytch_sdk",
"error_message": "This app bundle ID has not been registered as an allowed app for the Stytch SDK. Please add it here: https://stytch.com/dashboard/sdk-configuration",
"error_url": "https://stytch.com/docs/api/errors/400#bad_app_bundle_for_stytch_sdk"
}
bad_domain_for_stytch_sdk
This website has not been registered as an allowed domain for the Stytch SDK. Please add it here: https://stytch.com/dashboard/sdk-configuration
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "bad_domain_for_stytch_sdk",
"error_message": "This website has not been registered as an allowed domain for the Stytch SDK. Please add it here: https://stytch.com/dashboard/sdk-configuration",
"error_url": "https://stytch.com/docs/api/errors/400#bad_domain_for_stytch_sdk"
}
bad_request
The submitted request is invalid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "bad_request",
"error_message": "The submitted request is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#bad_request"
}
bad_vertical_for_stytch_sdk
The credentials used match a different vertical than the one specified in the SDK configuration. Please check if you are using a B2B or B2C project.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "bad_vertical_for_stytch_sdk",
"error_message": "The credentials used match a different vertical than the one specified in the SDK configuration. Please check if you are using a B2B or B2C project.",
"error_url": "https://stytch.com/docs/api/errors/400#bad_vertical_for_stytch_sdk"
}
billing_not_verified
You cannot use this endpoint in the live environment until credit card details are added to your account, but you can try the endpoint in the test environment. Once your billing information is verified, this endpoint can be used in live. Your first 5,000 monthly active users are free every month, but collecting this information helps us prevent abuse of the platform. Please go to billing settings to provide billing information.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "billing_not_verified",
"error_message": "You cannot use this endpoint in the Live environment until credit card details are added to your account, but you can try the endpoint in the Test environment. Once your billing information is verified, this endpoint can be used in Live. Collecting this information helps us prevent abuse of the platform. Please go to https://stytch.com/settings/billing to provide billing information.",
"error_url": "https://stytch.com/docs/api/errors/400#billing_not_verified"
}
billing_not_verified_for_email
You can only send magic links to emails matching your project's domain until credit card details are added to your account. Once your billing information is verified, emails can be sent to anyone. Your first 5,000 monthly active users are free every month, but collecting this information helps us prevent abuse of the platform. Please go to billing settings to provide billing information.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "billing_not_verified_for_email",
"error_message": "You can only send magic links to emails matching your project's domain until credit card details are added to your account. Once your billing information is verified, emails can be sent to anyone. Collecting this information helps us prevent abuse of the platform. Please see https://stytch.com/settings/billing to provide billing information.",
"error_url": "https://stytch.com/docs/api/errors/400#billing_not_verified_for_email"
}
breached_password
Password doesn't meet the API's strength requirements. A password's strength could be tested with the password strength check endpoint.
Common causes
The password was previously leaked, and the password now appears in the HaveIBeenPwned dataset.
Troubleshooting steps
Use the password strength check endpoint endpoint to get actionable feedback on improving the strength of the password string. This feedback can be passed on to the end user via your UI.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "breached_password",
"error_message": "password appears in a list of breached passwords.",
"error_url": "https://stytch.com/docs/api/errors/400#breached_password"
}
bulk_migrate_invalid_user_count
The number of users passed to bulk migrate password was invalid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "bulk_migrate_invalid_user_count",
"error_message": "The number of users passed to bulk migrate password was invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#bulk_migrate_invalid_user_count"
}
cannot_delete_email
Cannot delete the last email for a user with a password. This ensures they can complete a password reset.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "cannot_delete_email",
"error_message": "Cannot delete the last email for a user with a password. This ensures they can complete a password reset.",
"error_url": "https://stytch.com/docs/api/errors/400#cannot_delete_email"
}
cannot_delete_last_primary_factor
You cannot delete the last primary factor (email, phone number, crypto wallet) for a user because that would make their account difficult or impossible to recover. If you want to remove the user from your project, delete the user instead.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "cannot_delete_last_primary_factor",
"error_message": "Cannot delete the last primary factor (email, phone number, crypto wallet) for a user. If you want to delete the user instead, use the DeleteUser endpoint: https://stytch.com/docs/api/delete-user",
"error_url": "https://stytch.com/docs/api/errors/400#cannot_delete_last_primary_factor"
}
cannot_remove_primary_auth_mechanism
If you remove this factor, the user will be unable to log in.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "cannot_remove_primary_auth_mechanism",
"error_message": "If you remove this factor, the user will be unable to log in.",
"error_url": "https://stytch.com/docs/api/errors/400#cannot_remove_primary_auth_mechanism"
}
cannot_reset_password_with_existing_password
Cannot reset user's password using their existing password. This could be because their existing password was part of a data breach or to prevent password squatting. Please reset the password via a session or email reset.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "cannot_reset_password_with_existing_password",
"error_message": "Cannot reset user's password using their existing password. This could be because their existing password was part of a data breach or to prevent password squatting. Please reset the password via a session or email reset.",
"error_url": "https://stytch.com/docs/api/errors/400#cannot_reset_password_with_existing_password"
}
cannot_use_biometrics_with_pending_user
Mobile biometrics can only be used for active users.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "cannot_use_biometrics_with_pending_user",
"error_message": "Mobile biometrics can only be used for active users.",
"error_url": "https://stytch.com/docs/api/errors/400#cannot_use_biometrics_with_pending_user"
}
cannot_use_webauthn_with_pending_user
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "cannot_use_webauthn_with_pending_user",
"error_message": "WebAuthn can only be used for active users. To learn more about WebAuthn and user states read more at https://stytch.com/docs/api/webauthn-register-start and https://stytch.com/docs/api/user-states.",
"error_url": "https://stytch.com/docs/api/errors/400#cannot_use_webauthn_with_pending_user"
}
client_secret_too_long
Client secret is too long. Please make sure you have the correct value.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "client_secret_too_long",
"error_message": "Client secret is too long. Please make sure you have the correct value.",
"error_url": "https://stytch.com/docs/api/errors/400#client_secret_too_long"
}
could_not_parse_biometric_signature
Could not parse the biometric signature. The field should be base64 encoded.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "could_not_parse_biometric_signature",
"error_message": "Could not parse the biometric signature. The field should be base64 encoded.",
"error_url": "https://stytch.com/docs/api/errors/400#could_not_parse_biometric_signature"
}
crypto_wallet_type_incompatible_with_siwe
You may only pass in siwe_params if the wallet type is Ethereum.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "crypto_wallet_type_incompatible_with_siwe",
"error_message": "You may only pass in siwe_params if the wallet type is Ethereum.",
"error_url": "https://stytch.com/docs/api/errors/400#crypto_wallet_type_incompatible_with_siwe"
}
custom_claims_too_large
Custom claims are too large.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "custom_claims_too_large",
"error_message": "Custom claims are too large.",
"error_url": "https://stytch.com/docs/api/errors/400#custom_claims_too_large"
}
deny_list_max_exceeded
The number of user methods registered to the deny list has exceeded the maximum of 500.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "deny_list_max_exceeded",
"error_message": "The number of user methods registered to the deny list has exceeded the maximum of 500.",
"error_url": "https://stytch.com/docs/api/errors/400#deny_list_max_exceeded"
}
deprecated_endpoint
This endpoint has been deprecated
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "deprecated_endpoint",
"error_message": "This endpoint has been deprecated",
"error_url": "https://stytch.com/docs/api/errors/400#deprecated_endpoint"
}
duplicate_biometric_registration
This biometric public key has already been registered. Please register a different key.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "duplicate_biometric_registration",
"error_message": "This biometric public key has already been registered. Please register a different key.",
"error_url": "https://stytch.com/docs/api/errors/400#duplicate_biometric_registration"
}
duplicate_email
A user with the specified email already exists for this project.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "duplicate_email",
"error_message": "A user with the specified email already exists for this project.",
"error_url": "https://stytch.com/docs/api/errors/400#duplicate_email"
}
duplicate_email_for_user
The specified email is already tied to this user.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "duplicate_email_for_user",
"error_message": "The specified email is already tied to this user.",
"error_url": "https://stytch.com/docs/api/errors/400#duplicate_email_for_user"
}
duplicate_m2m_client_id
The client ID submitted is already in use by another client.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "duplicate_m2m_client_id",
"error_message": "The client ID submitted is already in use by another client.",
"error_url": "https://stytch.com/docs/api/errors/400#duplicate_m2m_client_id"
}
duplicate_organization
An organization with the specified name already exists.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "duplicate_organization",
"error_message": "An organization with the specified name already exists.",
"error_url": "https://stytch.com/docs/api/errors/400#duplicate_organization"
}
duplicate_organization_user
A user with the specified email already exists for this organization.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "duplicate_organization_user",
"error_message": "A user with the specified email already exists for this organization.",
"error_url": "https://stytch.com/docs/api/errors/400#duplicate_organization_user"
}
duplicate_phone_number
The phone number provided is already associated with an existing Stytch user.
Common causes
You’re attempting to create a new Stytch user with a phone number that already belongs to an existing user.
Troubleshooting steps
Instead of creating a new user, locate the existing user via our Search users endpoint. You can search by user phone number by adding a phone_number filter to your search request.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "duplicate_phone_number",
"error_message": "A user with the specified phone number already exists for this project.",
"error_url": "https://stytch.com/docs/api/errors/400#duplicate_phone_number"
}
duplicate_phone_number_for_user
The specified phone number is already tied to this user.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "duplicate_phone_number_for_user",
"error_message": "The specified phone number is already tied to this user.",
"error_url": "https://stytch.com/docs/api/errors/400#duplicate_phone_number_for_user"
}
duplicate_project_user
A project user for the specified organization user already exists for this project.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "duplicate_project_user",
"error_message": "A project user for the specified organization user already exists for this project.",
"error_url": "https://stytch.com/docs/api/errors/400#duplicate_project_user"
}
duplicate_redirect_url
A redirect URL already exists for the provided URL.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "duplicate_redirect_url",
"error_message": "A redirect URL already exists for the provided URL.",
"error_url": "https://stytch.com/docs/api/errors/400#duplicate_redirect_url"
}
duplicate_wallet_address
A user with the specified crypto wallet address already exists for this project.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "duplicate_wallet_address",
"error_message": "A user with the specified crypto wallet address already exists for this project.",
"error_url": "https://stytch.com/docs/api/errors/400#duplicate_wallet_address"
}
duplicate_wallet_address_for_user
The specified crypto wallet address is already tied to this user.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "duplicate_wallet_address_for_user",
"error_message": "The specified crypto wallet address is already tied to this user.",
"error_url": "https://stytch.com/docs/api/errors/400#duplicate_wallet_address_for_user"
}
duplicate_webauthn_registration
The supplied credential ID already exists for this project.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "duplicate_webauthn_registration",
"error_message": "The supplied credential ID already exists for this project.",
"error_url": "https://stytch.com/docs/api/errors/400#duplicate_webauthn_registration"
}
empty_webauthn_registration_name
Invalid name. Valid webauthn registration names are non-empty.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "empty_webauthn_registration_name",
"error_message": "Invalid name. Valid webauthn registration names are non-empty.",
"error_url": "https://stytch.com/docs/api/errors/400#empty_webauthn_registration_name"
}
expired_totp
The TOTP for this user has expired without being verified.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "expired_totp",
"error_message": "The TOTP for this user has expired without being verified.",
"error_url": "https://stytch.com/docs/api/errors/400#expired_totp"
}
forbidden_character_zero_width_space
Zero width space (U+200B) identified in request, please remove.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "forbidden_character_zero_width_space",
"error_message": "Zero width space (U+200B) identified in request, please remove.",
"error_url": "https://stytch.com/docs/api/errors/400#forbidden_character_zero_width_space"
}
id_token_expired
ID token is expired.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "id_token_expired",
"error_message": "ID token is expired.",
"error_url": "https://stytch.com/docs/api/errors/400#id_token_expired"
}
id_token_incorrect_audience
ID token's audience does not match the OAuth configuration's ID.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "id_token_incorrect_audience",
"error_message": "ID token's audience does not match the OAuth configuration's ID.",
"error_url": "https://stytch.com/docs/api/errors/400#id_token_incorrect_audience"
}
id_token_invalid
ID token is invalid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "id_token_invalid",
"error_message": "ID token is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#id_token_invalid"
}
id_token_nonce_invalid
The provided nonce does not match the nonce in the ID token.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "id_token_nonce_invalid",
"error_message": "The provided nonce does not match the nonce in the ID token.",
"error_url": "https://stytch.com/docs/api/errors/400#id_token_nonce_invalid"
}
inactive_email
The email provided has been marked as inactive by our email provider.
Common causes
Our email provider received a hard bounce when previously attempting to deliver an email to this email address.
This user previously marked an email sent by Stytch as spam.
Troubleshooting steps
Confirm with your user that their email address can now successfully receive emails.
If our email provider previously hit a hard bounce but the email address can now successfully receive emails, you can reactivate it via the User management or Members tab in the Stytch Dashboard.
If the user previously marked a Stytch email as spam but is now interested in receiving Stytch emails again, please reach out to support@stytch.com so that we can reactivate their email address.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "inactive_email",
"error_message": "The email provided has been marked as inactive by our email provider. This happens most often when the email is undeliverable due to a hard bounce. If the cause of the hard bounce has been resolved, you can reactivate the email address via the User management tab or the Members tab in the Stytch Dashboard.",
"error_url": "https://stytch.com/docs/api/errors/400#inactive_email"
}
incompatible_session_type
Session token and session duration are arguments for Stytch sessions. Leave these arguments blank when using IDP sessions.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "incompatible_session_type",
"error_message": "Session token and session duration are arguments for Stytch sessions. Leave these arguments blank when using IDP sessions.",
"error_url": "https://stytch.com/docs/api/errors/400#incompatible_session_type"
}
insecure_m2m_client_secret
The client secret submitted is not secure enough. Please generate a more secure secret.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "insecure_m2m_client_secret",
"error_message": "The client secret submitted is not secure enough. Please generate a more secure secret.",
"error_url": "https://stytch.com/docs/api/errors/400#insecure_m2m_client_secret"
}
invalid_append_salt
The append_salt value is not supported because it's too long.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_append_salt",
"error_message": "The append_salt value is not supported because it's too long.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_append_salt"
}
invalid_argon_2_iteration_amount
The iteration_amount value is invalid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_argon_2_iteration_amount",
"error_message": "The iteration_amount value is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_argon_2_iteration_amount"
}
invalid_argon_2_key_length
The key_length value is invalid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_argon_2_key_length",
"error_message": "The key_length value is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_argon_2_key_length"
}
invalid_argon_2_memory
The memory value is invalid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_argon_2_memory",
"error_message": "The memory value is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_argon_2_memory"
}
invalid_argon_2_salt
The salt value is an unsupported length.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_argon_2_salt",
"error_message": "The salt value is an unsupported length.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_argon_2_salt"
}
invalid_argon_2_threads
The threads value is invalid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_argon_2_threads",
"error_message": "The threads value is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_argon_2_threads"
}
invalid_argument
Invalid argument.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_argument",
"error_message": "Invalid argument.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_argument"
}
invalid_authentication_type
The authentication type provided in the header of the request is invalid. The Stytch API uses basic authentication. See more about authenticating Stytch API requests here.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_authentication_type",
"error_message": "The authentication type provided in the header of the request is invalid. The Stytch API uses basic authentication. See more about authenticating Stytch API requests here: https://stytch.com/docs/api/authentication",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_authentication_type"
}
invalid_authenticator_type
Invalid authenticator type. The valid values are platform and cross-platform.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_authenticator_type",
"error_message": "Invalid authenticator type. The valid values are platform and cross-platform.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_authenticator_type"
}
invalid_authorization_header
The authorization header provided with the request is invalid.
Common causes
HTTP request is missing an Authorization header
The Authorization header in the HTTP request is not formatted properly
The Authorization header in the HTTP request has the incorrect credentials
Troubleshooting steps
Check the Authorization header in the HTTP request for proper formatting.
Always use the Basic Auth type in the header.
Check the project credentials you entered match your API keys in the Dashboard.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_authorization_header",
"error_message": "The authorization header provided with the request is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_authorization_header"
}
invalid_b2b_endpoint
The provided project_id is a Consumer project and this endpoint is only enabled for B2B projects. Please go to https://stytch.com/docs/home for the consumer version.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_b2b_endpoint",
"error_message": "The provided project_id is a Consumer project and this endpoint is only enabled for B2B projects. Please go to https://stytch.com/docs/home for the consumer version.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_b2b_endpoint"
}
invalid_base64_scrypt_hash
The provided hash isn't a base64 encoded string. Please base64 encode the hash before passing it to this endpoint.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_base64_scrypt_hash",
"error_message": "The provided hash isn't a base64 encoded string. Please base64 encode the hash before passing it to this endpoint.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_base64_scrypt_hash"
}
invalid_base64_scrypt_salt
The provided salt isn't a base64 encoded string. Please base64 encode the salt before passing it to this endpoint.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_base64_scrypt_salt",
"error_message": "The provided salt isn't a base64 encoded string. Please base64 encode the salt before passing it to this endpoint.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_base64_scrypt_salt"
}
invalid_bcrypt_cost
The bcrypt cost value is too high, it must be less than 15. If you need a higher cost parameter, please email support@stytch.com.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_bcrypt_cost",
"error_message": "The bcrypt cost value is too high, it must be less than 15. If you need a higher cost parameter, please email support@stytch.com.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_bcrypt_cost"
}
invalid_bcrypt_hash
The bcrypt hash passed is not valid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_bcrypt_hash",
"error_message": "The bcrypt hash passed is not valid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_bcrypt_hash"
}
invalid_biometric_registration_id
biometric_registration_id format is invalid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_biometric_registration_id",
"error_message": "biometric_registration_id format is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_biometric_registration_id"
}
invalid_callback_id
The callback URL has an invalid OAuth Callback ID. Please find it in the dashboard at https://stytch.com/dashboard/ and follow the steps there to enter it into the identity provider
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_callback_id",
"error_message": "The callback URL has an invalid OAuth Callback ID. Please find it in the dashboard at https://stytch.com/dashboard/ and follow the steps there to enter it into the identity provider",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_callback_id"
}
invalid_captcha_provider_id
captcha_provider_id format is invalid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_captcha_provider_id",
"error_message": "captcha_provider_id format is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_captcha_provider_id"
}
invalid_captcha_provider_type
provider_type should be set to 'GoogleRecaptchaEnterpriseSilentWeb', 'GoogleRecaptchaEnterpriseSilentAndroid', or 'GoogleRecaptchaEnterpriseSilentIOS',.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_captcha_provider_type",
"error_message": "provider_type should be set to 'GoogleRecaptchaEnterpriseSilentWeb', 'GoogleRecaptchaEnterpriseSilentAndroid', or 'GoogleRecaptchaEnterpriseSilentIOS',.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_captcha_provider_type"
}
invalid_captcha_threshold
threshold should be in the range 0 to 1 inclusive.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_captcha_threshold",
"error_message": "threshold should be in the range 0 to 1 inclusive.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_captcha_threshold"
}
invalid_code
Code format is invalid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_code",
"error_message": "Code format is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_code"
}
invalid_create_user_request
Invalid CreateUser request. Please provide either an email or phone_number in the request.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_create_user_request",
"error_message": "Invalid CreateUser request. Please provide either an email or phone_number in the request.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_create_user_request"
}
invalid_crypto_wallet_address
crypto_wallet_address must be nonempty.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_crypto_wallet_address",
"error_message": "crypto_wallet_address must be nonempty.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_crypto_wallet_address"
}
invalid_crypto_wallet_id
The crypto_wallet_id is invalid (i.e. not properly formatted) or missing. crypto-wallet-test-dbbd372e-79f8-48ea-907c-5f0755e7d328 is an example crypto_wallet_id.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_crypto_wallet_id",
"error_message": "crypto_wallet_id format is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_crypto_wallet_id"
}
invalid_default_url
Thanks for trying Stytch! Replace the default URL with your own to get started. If you haven't already done so, you'll also need to set your magic_link_urls in the dashboard here: https://stytch.com/dashboard/redirect-urls
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_default_url",
"error_message": "Thanks for trying Stytch! Replace the default URL with your own to get started. If you haven't already done so, you'll also need to set your magic_link_urls in the dashboard here: https://stytch.com/dashboard/redirect-urls",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_default_url"
}
invalid_domain
Invalid domain, ensure that only the domain was provided. Do not include https:// or a port in this value. Visit the link here for more information about valid domains (called RP ID on the site).
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_domain",
"error_message": "Invalid domain, ensure that only the domain was provided. Do not include https:// or a port in this value. Visit https://w3c.github.io/webauthn/#rp-id for more information about valid domains (called RP ID on the site).",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_domain"
}
invalid_email
The email address is invalid (i.e. not properly formatted) or missing. Check that the email address is properly formatted and only includes allowed characters.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_email",
"error_message": "Email format is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_email"
}
invalid_email_domain
Email domain is too large. Please contact support if this is a valid email.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_email_domain",
"error_message": "Email domain is too large. Please contact support if this is a valid email.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_email_domain"
}
invalid_email_html
email html is not valid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_email_html",
"error_message": "email html is not valid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_email_html"
}
invalid_email_id
The email_id is invalid (i.e. not properly formatted) or missing. email-test-81bf03a8-86e1-4d95-bd44-bb3495224953 is an example email_id.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_email_id",
"error_message": "email_id format is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_email_id"
}
invalid_email_plaintext
email plaintext is not valid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_email_plaintext",
"error_message": "email plaintext is not valid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_email_plaintext"
}
invalid_email_sandbox
Invalid email. The sanbox@stytch.com email can only be used in the Test environment.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_email_sandbox",
"error_message": "Invalid email. The sanbox@stytch.com email can only be used in the Test environment.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_email_sandbox"
}
invalid_email_subject
email subject is not valid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_email_subject",
"error_message": "email subject is not valid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_email_subject"
}
invalid_ethereum_address
crypto_wallet_address format is invalid for an Ethereum address. Expecting a string starting with 0x followed by 40 hexadecimal characters.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_ethereum_address",
"error_message": "crypto_wallet_address format is invalid for an Ethereum address. Expecting a string starting with 0x followed by 40 hexadecimal characters.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_ethereum_address"
}
invalid_exchange_primary_factor_fields
Please ensure exactly one of the following is provided: email_address, phone_number.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_exchange_primary_factor_fields",
"error_message": "Please ensure exactly one of the following is provided: email_address, phone_number.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_exchange_primary_factor_fields"
}
invalid_exchange_primary_factor_user
The provided user does not have exactly one factor that's either an email or a phone.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_exchange_primary_factor_user",
"error_message": "The provided user does not have exactly one factor that's either an email or a phone.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_exchange_primary_factor_user"
}
invalid_expiration
Expiration is invalid, should be between 5 and 10080 minutes.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_expiration",
"error_message": "Expiration is invalid, should be between 5 and 10080 minutes.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_expiration"
}
invalid_expiration_otp
expiration_minutes is invalid, should be between 1 and 10 minutes.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_expiration_otp",
"error_message": "expiration_minutes is invalid, should be between 1 and 10 minutes.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_expiration_otp"
}
invalid_hash
hash is invalid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_hash",
"error_message": "hash is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_hash"
}
invalid_hash_type
The hash_type is invalid. Please check here for a list of supported hash types.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_hash_type",
"error_message": "hash_type is invalid. Please check https://stytch.com/docs/api/password-migrate for a list of support hash types.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_hash_type"
}
invalid_id
ID format is invalid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_id",
"error_message": "ID format is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_id"
}
invalid_invite_magic_link_url
invite_magic_link_url format is invalid. Common issues include using http instead of https or omitting https://.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_invite_magic_link_url",
"error_message": "invite_magic_link_url format is invalid. Common issues include using http instead of https or omitting https://.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_invite_magic_link_url"
}
invalid_invite_redirect_url
invite_redirect_url format is invalid. Common issues include using http instead of https or omitting https://.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_invite_redirect_url",
"error_message": "invite_redirect_url format is invalid. Common issues include using http instead of https or omitting https://.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_invite_redirect_url"
}
invalid_ip_address
ip_address format is invalid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_ip_address",
"error_message": "ip_address format is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_ip_address"
}
invalid_locale
locale is invalid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_locale",
"error_message": "locale is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_locale"
}
invalid_login_magic_link_url
login_magic_link_url format is invalid. Common issues include using http instead of https or omitting https://.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_login_magic_link_url",
"error_message": "login_magic_link_url format is invalid. Common issues include using http instead of https or omitting https://.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_login_magic_link_url"
}
invalid_login_redirect_url
login_redirect_url format is invalid. Common issues include using http instead of https or omitting https://.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_login_redirect_url",
"error_message": "login_redirect_url format is invalid. Common issues include using http instead of https or omitting https://.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_login_redirect_url"
}
invalid_m2m_client_scope
The client scope was invalid. Client scopes must be at most 128 characters long and must not contain spaces, backslashes, or quotes.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_m2m_client_scope",
"error_message": "The client scope was invalid. Client scopes must be at most 128 characters long and must not contain spaces, backslashes, or quotes.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_m2m_client_scope"
}
invalid_m2m_client_status
The client status sent was invalid. Client statuses must be either 'active' or 'disabled'.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_m2m_client_status",
"error_message": "The client status sent was invalid. Client statuses must be either 'active' or 'disabled'.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_m2m_client_status"
}
invalid_magic_link_url
magic_link_url format is invalid. Common issues include using http instead of https or omitting https://.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_magic_link_url",
"error_message": "magic_link_url format is invalid. Common issues include using http instead of https or omitting https://.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_magic_link_url"
}
invalid_md_5_hash
The MD5 hash passed is not valid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_md_5_hash",
"error_message": "The MD5 hash passed is not valid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_md_5_hash"
}
invalid_method_id
The method_id is invalid (i.e. not properly formatted) or missing. email-test-81bf03a8-86e1-4d95-bd44-bb3495224953 is an example method_id.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_method_id",
"error_message": "method_id format is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_method_id"
}
invalid_mobile_identifier
The mobile header sent is invalid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_mobile_identifier",
"error_message": "The mobile header sent is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_mobile_identifier"
}
invalid_oauth_attach_token
The OAuth attach token could not be matched.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_oauth_attach_token",
"error_message": "The OAuth attach token could not be matched.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_oauth_attach_token"
}
invalid_oauth_provider
We didn't recognize the OAuth provider name in the request. Check that the argument is the name of a supported OAuth provider.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_oauth_provider",
"error_message": "We didn't recognize the OAuth provider name in the request. Check that the argument is the name of a supported OAuth provider.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_oauth_provider"
}
invalid_oauth_user_registration_id
oauth_user_registration_id format is invalid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_oauth_user_registration_id",
"error_message": "oauth_user_registration_id format is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_oauth_user_registration_id"
}
invalid_organization_id
organization_id format is invalid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_organization_id",
"error_message": "organization_id format is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_organization_id"
}
invalid_organization_name
Organization name cannot be longer than 128 characters.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_organization_name",
"error_message": "Organization name cannot be longer than 128 characters.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_organization_name"
}
invalid_password_id
password_id format is invalid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_password_id",
"error_message": "password_id format is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_password_id"
}
invalid_password_reset_redirect_url
reset_password_redirect_url is invalid. Common issues include using http instead of https or omitting https://.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_password_reset_redirect_url",
"error_message": "reset_password_redirect_url is invalid. Common issues include using http instead of https or omitting https://.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_password_reset_redirect_url"
}
invalid_pbkdf_2_hash
The PBKDF-2 hash passed is not valid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_pbkdf_2_hash",
"error_message": "The PBKDF-2 hash passed is not valid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_pbkdf_2_hash"
}
invalid_pbkdf_2_iteration_amount
The provided PBKDF-2 iteration_amount value is invalid. Valid range: 512-524288.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_pbkdf_2_iteration_amount",
"error_message": "The provided PBKDF-2 iteration_amount value is invalid. Valid range: 512-524288.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_pbkdf_2_iteration_amount"
}
invalid_pbkdf_2_salt
The provided PBKDF-2 salt is invalid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_pbkdf_2_salt",
"error_message": "The provided PBKDF-2 salt is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_pbkdf_2_salt"
}
invalid_phone_number
The phone number is invalid, i.e. not properly formatted, or missing.
Common causes
If you’re accepting the raw input from a user, they may have included an invalid character, i.e. not a digit.
If the phone number is missing from the call, you may not be passing the input from the user to your backend.
[WhatsApp] Recipient has not accepted WhatsApp's new Terms of Service, or is using an unsupported version of the WhatsApp client for their phone.
Troubleshooting steps
If you’re accepting the raw input form a user, make sure you’re sanitizing the input and formatting it properly. Many libraries can help with this, like libphonenumber-js.
Check that the phone number is properly formatted with the E. 164 format, e.g. “+14155551234”
Check that the phone number only includes allowed characters, i.e. dashes “555-1234” and parentheses “(415)” are not included.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_phone_number",
"error_message": "Phone number format is invalid. Ensure the phone number is in the E.164 format.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_phone_number"
}
invalid_phone_number_country_code
The phone number's country code is invalid or not supported.
Common causes
SMS to phone numbers outside of the US and Canada is disabled by default for customers who did not use SMS prior to October 2023. If you're interested in sending international SMS, please reach out to support@stytch.com.
Regardless of whether or not you are enabled for international SMS, Stytch does not support sending SMS to countries on our Unsupported countries list.
Troubleshooting steps
Make sure that the country code you've provided is correctly formatted.
Make sure that the country is not included in our Unsupported countries list.
Make sure that your Stytch workspace is enabled for SMS to international numbers by reaching out to support@stytch.com.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_phone_number_country_code",
"error_message": "The phone number's country code is invalid, unsupported, or disabled for your Stytch Workspace. Please see here for additional information: https://stytch.com/docs/api/errors/400#invalid_phone_number_country_code",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_phone_number_country_code"
}
invalid_phone_number_docs
Thanks for trying Stytch! Replace the test phone number with a valid one to start sending one-time passcodes.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_phone_number_docs",
"error_message": "Thanks for trying Stytch! Replace the test phone number with a valid one to start sending one-time passcodes.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_phone_number_docs"
}
invalid_phone_number_sandbox
Phone number is invalid. The sandbox phone number, +10000000000, can only be used in the Test environment.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_phone_number_sandbox",
"error_message": "Phone number is invalid. The sandbox phone number, +10000000000, can only be used in the Test environment.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_phone_number_sandbox"
}
invalid_phpass_hash_format
The phpass hash has an incorrect format as it needs to be exactly 34 characters.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_phpass_hash_format",
"error_message": "The phpass hash has an incorrect format as it needs to be exactly 34 characters.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_phpass_hash_format"
}
invalid_phpass_hash_prefix
The phpass hash is invalid as it needs to start with $P$
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_phpass_hash_prefix",
"error_message": "The phpass hash is invalid as it needs to start with $P$",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_phpass_hash_prefix"
}
invalid_pkce_code_challenge
The PKCE Code Challenge param may only contain alphanumerics and the reserved characters '-', '.', '_', or '~'. It must also be between 43 and 128 characters long. Please refer to https://datatracker.ietf.org/doc/html/rfc7636#section-4.2 for details.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_pkce_code_challenge",
"error_message": "The PKCE Code Challenge param may only contain alphanumerics and the reserved characters '-', '.', '_', or '~'. It must also be between 43 and 128 characters long. Please refer to https://datatracker.ietf.org/doc/html/rfc7636#section-4.2 for details.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_pkce_code_challenge"
}
invalid_pkce_code_verifier
The PKCE Code Verifier param may only contain alphanumerics and the reserved characters '-', '.', '_', or '~'. It must also be between 43 and 128 characters long. Please refer to https://datatracker.ietf.org/doc/html/rfc7636#section-4.1 for details.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_pkce_code_verifier",
"error_message": "The PKCE Code Verifier param may only contain alphanumerics and the reserved characters '-', '.', '_', or '~'. It must also be between 43 and 128 characters long. Please refer to https://datatracker.ietf.org/doc/html/rfc7636#section-4.1 for details.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_pkce_code_verifier"
}
invalid_prepend_salt
The prepend_salt value is not supported because it's too long.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_prepend_salt",
"error_message": "The prepend_salt value is not supported because it's too long.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_prepend_salt"
}
invalid_project_id
project_id format is invalid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_project_id",
"error_message": "project_id format is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_project_id"
}
invalid_project_id_authentication
The project ID provided in the basic authentication header is invalid. Please check to make sure the format is correct and there are no trailing whitespaces. To view your project ID please visit the Stytch dashboard here.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_project_id_authentication",
"error_message": "The project ID provided in the basic authentication header is invalid. Please check to make sure the format is correct and there are no trailing whitespaces. To create a new project or confirm an existing project ID please visit the Stytch dashboard here: https://stytch.com/dashboard/api-keys",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_project_id_authentication"
}
invalid_project_name
The project name is invalid.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_project_name",
"error_message": "The project name is invalid.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_project_name"
}
invalid_public_key
Invalid public key. The key is present but is malformed and cannot be decoded. The field should be base64 encoded.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_public_key",
"error_message": "Invalid public key. The key is present but is malformed and cannot be decoded. The field should be base64 encoded.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_public_key"
}
invalid_public_key_credential
Invalid public key credential. Please confirm you're passing a correctly formatted public key credential.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_public_key_credential",
"error_message": "Invalid public key credential. Please confirm you're passing a correctly formatted public key credential.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_public_key_credential"
}
invalid_public_key_credential_invalid_authenticator_data
Invalid public key credential. The authenticatorData field is present but is malformed and cannot be decoded. The field should be base64 encoded.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_public_key_credential_invalid_authenticator_data",
"error_message": "Invalid public key credential. The authenticatorData field is present but is malformed and cannot be decoded. The field should be base64 encoded.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_public_key_credential_invalid_authenticator_data"
}
invalid_public_key_credential_invalid_id
Invalid public key credential. The id field is present but is malformed and cannot be decoded. The field should be base64 encoded.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_public_key_credential_invalid_id",
"error_message": "Invalid public key credential. The id field is present but is malformed and cannot be decoded. The field should be base64 encoded.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_public_key_credential_invalid_id"
}
invalid_public_key_credential_invalid_signature
Invalid public key credential. The signature field is present but is malformed and cannot be decoded. The field should be base64 encoded.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_public_key_credential_invalid_signature",
"error_message": "Invalid public key credential. The signature field is present but is malformed and cannot be decoded. The field should be base64 encoded.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_public_key_credential_invalid_signature"
}
invalid_public_key_credential_malformed_attestation_object
Invalid public key credential. The attestationObject field is present but is malformed and cannot be parsed.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_public_key_credential_malformed_attestation_object",
"error_message": "Invalid public key credential. The attestationObject field is present but is malformed and cannot be parsed.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_public_key_credential_malformed_attestation_object"
}
invalid_public_key_credential_malformed_client_data_json
Invalid public key credential. The clientDataJSON field is present but is malformed and cannot be parsed.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_public_key_credential_malformed_client_data_json",
"error_message": "Invalid public key credential. The clientDataJSON field is present but is malformed and cannot be parsed.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_public_key_credential_malformed_client_data_json"
}
invalid_public_key_credential_missing_attestation_object_field
Invalid public key credential. The public key credential is missing the attestationObject field.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_public_key_credential_missing_attestation_object_field",
"error_message": "Invalid public key credential. The public key credential is missing the attestationObject field.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_public_key_credential_missing_attestation_object_field"
}
invalid_public_key_credential_missing_authenticator_data_field
Invalid public key credential. The public key credential is missing the authenticatorData field.
Error
{
"status_code": 400,
"request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
"error_type": "invalid_public_key_credential_missing_authenticator_data_field",
"error_message": "Invalid public key credential. The public key credential is missing the authenticatorData field.",
"error_url": "https://stytch.com/docs/api/errors/400#invalid_public_key_credential_missing_authenticator_data_field"
}