# Enrol a user device for authentication using one-time passwords This is the first step in enrolling the logged-in user's mobile device, where a one-time password is sent to the device. _Note that on the Sandbox Environment, text messages are not sent and the one-time-password is always \"123456\"._ Endpoint: POST /authentication_factors/otp/{channel} Version: 3.63.5 Security: api-key, auth_token ## Header parameters: - `idempotency-ref` (string) A unique call reference generated by the caller that, taking into consideration the payload as well as the operation itself, helps avoid duplicate operations. Idempotency reference uniqueness is maintained for at least 24 hours. ## Path parameters: - `channel` (string, required) The unique identifier for the channel. Enum: "SMS" ## Response 400 fields (application/json): - `message` (string) When present helps to identify and fix the problem. - `syntaxErrors` (object) Is returned as part of an HTTP error response whenever a syntax error is detected. A list of the fields together with their syntax error will be provided. - `syntaxErrors.invalidFields` (array) - `syntaxErrors.invalidFields.params` (array) - `syntaxErrors.invalidFields.fieldName` (string) - `syntaxErrors.invalidFields.error` (string) Enum: "REQUIRED", "HAS_TEXT", "REQUIRES", "SIZE", "RANGE", "IN", "NOT_IN", "REGEX", "EXACTLY", "AT_LEAST", "AT_MOST", "ALL_OR_NONE" ## Response 404 fields (application/json): - `code` (string) - `message` (string) ## Response 409 fields (application/json): - `errorCode` (string) Enum: "CHANNEL_NOT_SUPPORTED", "CHANNEL_ALREADY_REGISTERED", "MOBILE_NUMBER_NOT_AVAILABLE", "MOBILE_NUMBER_INVALID", "MOBILE_COUNTRY_NOT_SUPPORTED", "CREDENTIALS_INACTIVE", "TYPE_DOES_NOT_SUPPORT_ENROLMENT" ## Response default fields (application/json): - `code` (string) - `message` (string) ## Response 204 fields ## Response 401 fields ## Response 403 fields ## Response 429 fields ## Response 500 fields ## Response 503 fields