Update a specific Factor. This endpoint can be used to Verify a Factor if passed an `AuthPayload` param.

POST /v2/Services/{ServiceSid}/Entities/{Identity}/Factors/{Sid}

Update a specific Factor. This endpoint can be used to Verify a Factor if passed an AuthPayload param.

Path parameters

  • ServiceSid string Required

    The unique SID identifier of the Service.

    Minimum length is 34, maximum length is 34. Format should match the following pattern: ^VA[0-9a-fA-F]{32}$.

  • Identity string Required

    Customer unique identity for the Entity owner of the Factor. This identifier should be immutable, not PII, length between 8 and 64 characters, and generated by your external system, such as your user's UUID, GUID, or SID. It can only contain dash (-) separated alphanumeric characters.

  • Sid string Required

    A 34 character string that uniquely identifies this Factor.

    Minimum length is 34, maximum length is 34. Format should match the following pattern: ^YF[0-9a-fA-F]{32}$.

application/x-www-form-urlencoded

Body

  • AuthPayload string

    The optional payload needed to verify the Factor for the first time. E.g. for a TOTP, the numeric code.

  • FriendlyName string

    The new friendly name of this Factor. It can be up to 64 characters.

  • Config.NotificationToken string

    For APN, the device token. For FCM, the registration token. It is used to send the push notifications. Required when factor_type is push. If specified, this value must be between 32 and 255 characters long.

  • Config.SdkVersion string

    The Verify Push SDK version used to configure the factor

  • Config.TimeStep integer

    Defines how often, in seconds, are TOTP codes generated. i.e, a new TOTP code is generated every time_step seconds. Must be between 20 and 60 seconds, inclusive

  • Config.Skew integer

    The number of time-steps, past and future, that are valid for validation of TOTP codes. Must be between 0 and 2, inclusive

  • Config.CodeLength integer

    Number of digits for generated TOTP codes. Must be between 3 and 8, inclusive

  • Config.Alg string

    Values are sha1, sha256, or sha512.

  • Config.NotificationPlatform string

    The transport technology used to generate the Notification Token. Can be apn, fcm or none.

    Required when factor_type is push.

Responses

  • 200 application/json

    OK

    Hide headers attributes Show headers attributes
    • Twilio-Verify-Factor-Signature string
    • Access-Control-Allow-Origin string

      Specify the origin(s) allowed to access the resource

    • Access-Control-Allow-Methods string

      Specify the HTTP methods allowed when accessing the resource

    • Access-Control-Allow-Headers string

      Specify the headers allowed when accessing the resource

    • Access-Control-Allow-Credentials boolean

      Indicates whether the browser should include credentials

    • Access-Control-Expose-Headers string

      Headers exposed to the client

    Hide response attributes Show response attributes object
    • sid string | null

      A 34 character string that uniquely identifies this Factor.

      Minimum length is 34, maximum length is 34. Format should match the following pattern: ^YF[0-9a-fA-F]{32}$.

    • account_sid string | null

      The unique SID identifier of the Account.

      Minimum length is 34, maximum length is 34. Format should match the following pattern: ^AC[0-9a-fA-F]{32}$.

    • service_sid string | null

      The unique SID identifier of the Service.

      Minimum length is 34, maximum length is 34. Format should match the following pattern: ^VA[0-9a-fA-F]{32}$.

    • entity_sid string | null

      The unique SID identifier of the Entity.

      Minimum length is 34, maximum length is 34. Format should match the following pattern: ^YE[0-9a-fA-F]{32}$.

    • identity string | null

      Customer unique identity for the Entity owner of the Factor. This identifier should be immutable, not PII, length between 8 and 64 characters, and generated by your external system, such as your user's UUID, GUID, or SID. It can only contain dash (-) separated alphanumeric characters.

    • date_created string(date-time) | null

      The date that this Factor was created, given in ISO 8601 format.

    • date_updated string(date-time) | null

      The date that this Factor was updated, given in ISO 8601 format.

    • friendly_name string | null

      A human readable description of this resource, up to 64 characters. For a push factor, this can be the device's name.

    • status string

      The Status of this Factor. One of unverified or verified.

      Values are unverified or verified.

    • factor_type string

      The Type of this Factor. Currently push and totp are supported.

      Values are push or totp.

    • config

      An object that contains configurations specific to a factor_type.

    • metadata

      Custom metadata associated with the factor. This is added by the Device/SDK directly to allow for the inclusion of device information. It must be a stringified JSON with only strings values eg. {"os": "Android"}. Can be up to 1024 characters in length.

    • url string(uri) | null

      The URL of this resource.

POST /v2/Services/{ServiceSid}/Entities/{Identity}/Factors/{Sid}
curl \
 --request POST 'https://verify.twilio.com/v2/Services/{ServiceSid}/Entities/{Identity}/Factors/{Sid}' \
 --user "username:password" \
 --header "Content-Type: application/x-www-form-urlencoded" \
 --data 'AuthPayload=123456&FriendlyName=FriendlyName&Config.SdkVersion=1.0&Config.NotificationToken=test_token'
Request examples
{"AuthPayload"=>"123456", "FriendlyName"=>"FriendlyName", "Config.SdkVersion"=>"1.0", "Config.NotificationToken"=>"test_token"}
{"AuthPayload"=>"123456", "FriendlyName"=>"My Friendly Name"}
Response examples (200)
{
  "sid": "YFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "url": "https://verify.twilio.com/v2/Services/VAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Entities/ff483d1ff591898a9942916050d2ca3f/Factors/YFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "config": {
    "app_id": "com.example.myapp",
    "sdk_version": "1.0",
    "notification_token": "test_token",
    "notification_platform": "fcm"
  },
  "status": "verified",
  "identity": "ff483d1ff591898a9942916050d2ca3f",
  "metadata": {
    "os": "Android"
  },
  "entity_sid": "YEaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "factor_type": "push",
  "service_sid": "VAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "date_created": "2015-07-30T20:00:00Z",
  "date_updated": "2015-07-30T20:00:00Z",
  "friendly_name": "friendly_name"
}
{
  "sid": "YFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "url": "https://verify.twilio.com/v2/Services/VAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Entities/ff483d1ff591898a9942916050d2ca3f/Factors/YFaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "config": {
    "alg": "sha1",
    "skew": 1,
    "time_step": 30,
    "code_length": 6
  },
  "status": "verified",
  "identity": "ff483d1ff591898a9942916050d2ca3f",
  "metadata": null,
  "entity_sid": "YEaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "factor_type": "totp",
  "service_sid": "VAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "date_created": "2015-07-30T20:00:00Z",
  "date_updated": "2015-07-30T20:00:00Z",
  "friendly_name": "friendly_name"
}