Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
{
"components": {
"schemas": {
"verify.v2.form": {
"properties": {
"form_meta": {
"description": "Additional information for the available forms for this type.",
"nullable": true,
"type": "object"
},
"form_type": {
"description": "The Type of this Form",
"enum": [
"form-push"
],
"nullable": true,
"type": "string"
},
"forms": {
"description": "Object that contains the available forms for this type.",
"nullable": true,
"type": "object"
},
"url": {
"description": "The URL to access the forms for this type.",
"format": "uri",
"nullable": true,
"type": "string"
}
},
"type": "object"
},
"verify.v2.service": {
"properties": {
"account_sid": {
"description": "The SID of the Account that created the resource",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^AC[0-9a-fA-F]{32}$",
"type": "string"
},
"code_length": {
"description": "The length of the verification code",
"nullable": true,
"type": "integer"
},
"custom_code_enabled": {
"description": "Whether to allow sending verifications with a custom code.",
"nullable": true,
"type": "boolean"
},
"date_created": {
"description": "The RFC 2822 date and time in GMT when the resource was created",
"format": "date-time",
"nullable": true,
"type": "string"
},
"date_updated": {
"description": "The RFC 2822 date and time in GMT when the resource was last updated",
"format": "date-time",
"nullable": true,
"type": "string"
},
"default_template_sid": {
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^HJ[0-9a-fA-F]{32}$",
"type": "string"
},
"do_not_share_warning_enabled": {
"description": "Whether to add a security warning at the end of an SMS.",
"nullable": true,
"type": "boolean"
},
"dtmf_input_required": {
"description": "Whether to ask the user to press a number before delivering the verify code in a phone call",
"nullable": true,
"type": "boolean"
},
"friendly_name": {
"description": "The string that you assigned to describe the verification service",
"nullable": true,
"type": "string"
},
"links": {
"description": "The URLs of related resources",
"nullable": true,
"type": "object"
},
"lookup_enabled": {
"description": "Whether to perform a lookup with each verification",
"nullable": true,
"type": "boolean"
},
"psd2_enabled": {
"description": "Whether to pass PSD2 transaction parameters when starting a verification",
"nullable": true,
"type": "boolean"
},
"push": {
"description": "The service level configuration of factor push type.",
"nullable": true,
"type": "object"
},
"sid": {
"description": "The unique string that identifies the resource",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
},
"skip_sms_to_landlines": {
"description": "Whether to skip sending SMS verifications to landlines",
"nullable": true,
"type": "boolean"
},
"totp": {
"description": "The service level configuration of factor TOTP type.",
"nullable": true,
"type": "object"
},
"tts_name": {
"description": "The name of an alternative text-to-speech service to use in phone calls",
"nullable": true,
"type": "string"
},
"url": {
"description": "The absolute URL of the resource",
"format": "uri",
"nullable": true,
"type": "string"
}
},
"type": "object"
},
"verify.v2.service.access_token": {
"properties": {
"token": {
"description": "Generated access token.",
"nullable": true,
"type": "string"
}
},
"type": "object"
},
"verify.v2.service.entity": {
"properties": {
"account_sid": {
"description": "Account Sid.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^AC[0-9a-fA-F]{32}$",
"type": "string"
},
"date_created": {
"description": "The date this Entity was created",
"format": "date-time",
"nullable": true,
"type": "string"
},
"date_updated": {
"description": "The date this Entity was updated",
"format": "date-time",
"nullable": true,
"type": "string"
},
"identity": {
"description": "Unique external identifier of the Entity",
"nullable": true,
"type": "string"
},
"links": {
"description": "Nested resource URLs.",
"nullable": true,
"type": "object"
},
"service_sid": {
"description": "Service Sid.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
},
"sid": {
"description": "A string that uniquely identifies this Entity.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^YE[0-9a-fA-F]{32}$",
"type": "string"
},
"url": {
"description": "The URL of this resource.",
"format": "uri",
"nullable": true,
"type": "string"
}
},
"type": "object"
},
"verify.v2.service.entity.challenge": {
"properties": {
"account_sid": {
"description": "Account Sid.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^AC[0-9a-fA-F]{32}$",
"type": "string"
},
"date_created": {
"description": "The date this Challenge was created",
"format": "date-time",
"nullable": true,
"type": "string"
},
"date_responded": {
"description": "The date this Challenge was responded",
"format": "date-time",
"nullable": true,
"type": "string"
},
"date_updated": {
"description": "The date this Challenge was updated",
"format": "date-time",
"nullable": true,
"type": "string"
},
"details": {
"description": "Details about the Challenge.",
"nullable": true,
"type": "object"
},
"entity_sid": {
"description": "Entity Sid.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^YE[0-9a-fA-F]{32}$",
"type": "string"
},
"expiration_date": {
"description": "The date-time when this Challenge expires",
"format": "date-time",
"nullable": true,
"type": "string"
},
"factor_sid": {
"description": "Factor Sid.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^YF[0-9a-fA-F]{32}$",
"type": "string"
},
"factor_type": {
"description": "The Factor Type of this Challenge",
"enum": [
"push",
"totp"
],
"nullable": true,
"type": "string"
},
"hidden_details": {
"description": "Hidden details about the Challenge",
"nullable": true,
"type": "object"
},
"identity": {
"description": "Unique external identifier of the Entity",
"nullable": true,
"type": "string"
},
"links": {
"description": "Nested resource URLs.",
"nullable": true,
"type": "object"
},
"responded_reason": {
"description": "The Reason of this Challenge `status`",
"enum": [
"none",
"not_needed",
"not_requested"
],
"nullable": true,
"type": "string"
},
"service_sid": {
"description": "Service Sid.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
},
"sid": {
"description": "A string that uniquely identifies this Challenge.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^YC[0-9a-fA-F]{32}$",
"type": "string"
},
"status": {
"description": "The Status of this Challenge",
"enum": [
"pending",
"expired",
"approved",
"denied"
],
"nullable": true,
"type": "string"
},
"url": {
"description": "The URL of this resource.",
"format": "uri",
"nullable": true,
"type": "string"
}
},
"type": "object"
},
"verify.v2.service.entity.challenge.notification": {
"properties": {
"account_sid": {
"description": "Account Sid.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^AC[0-9a-fA-F]{32}$",
"type": "string"
},
"challenge_sid": {
"description": "Challenge Sid.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^YC[0-9a-fA-F]{32}$",
"type": "string"
},
"date_created": {
"description": "The date this Notification was created",
"format": "date-time",
"nullable": true,
"type": "string"
},
"entity_sid": {
"description": "Entity Sid.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^YE[0-9a-fA-F]{32}$",
"type": "string"
},
"identity": {
"description": "Unique external identifier of the Entity",
"nullable": true,
"type": "string"
},
"priority": {
"description": "The priority of the notification.",
"nullable": true,
"type": "string"
},
"service_sid": {
"description": "Service Sid.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
},
"sid": {
"description": "A string that uniquely identifies this Notification.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^NT[0-9a-fA-F]{32}$",
"type": "string"
},
"ttl": {
"description": "How long, in seconds, the notification is valid.",
"nullable": true,
"type": "integer"
}
},
"type": "object"
},
"verify.v2.service.entity.factor": {
"properties": {
"account_sid": {
"description": "Account Sid.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^AC[0-9a-fA-F]{32}$",
"type": "string"
},
"config": {
"description": "Configurations for a `factor_type`.",
"nullable": true,
"type": "object"
},
"date_created": {
"description": "The date this Factor was created",
"format": "date-time",
"nullable": true,
"type": "string"
},
"date_updated": {
"description": "The date this Factor was updated",
"format": "date-time",
"nullable": true,
"type": "string"
},
"entity_sid": {
"description": "Entity Sid.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^YE[0-9a-fA-F]{32}$",
"type": "string"
},
"factor_type": {
"description": "The Type of this Factor",
"enum": [
"push",
"totp"
],
"nullable": true,
"type": "string"
},
"friendly_name": {
"description": "A human readable description of this resource.",
"nullable": true,
"type": "string"
},
"identity": {
"description": "Unique external identifier of the Entity",
"nullable": true,
"type": "string"
},
"service_sid": {
"description": "Service Sid.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
},
"sid": {
"description": "A string that uniquely identifies this Factor.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^YF[0-9a-fA-F]{32}$",
"type": "string"
},
"status": {
"description": "The Status of this Factor",
"enum": [
"unverified",
"verified"
],
"nullable": true,
"type": "string"
},
"url": {
"description": "The URL of this resource.",
"format": "uri",
"nullable": true,
"type": "string"
}
},
"type": "object"
},
"verify.v2.service.entity.new_factor": {
"properties": {
"account_sid": {
"description": "Account Sid.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^AC[0-9a-fA-F]{32}$",
"type": "string"
},
"binding": {
"description": "Unique external identifier of the Entity",
"nullable": true,
"type": "object"
},
"config": {
"description": "Binding for a `factor_type`.",
"nullable": true,
"type": "object"
},
"date_created": {
"description": "The date this Factor was created",
"format": "date-time",
"nullable": true,
"type": "string"
},
"date_updated": {
"description": "The date this Factor was updated",
"format": "date-time",
"nullable": true,
"type": "string"
},
"entity_sid": {
"description": "Entity Sid.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^YE[0-9a-fA-F]{32}$",
"type": "string"
},
"factor_type": {
"description": "The Type of this Factor",
"enum": [
"push",
"totp"
],
"nullable": true,
"type": "string"
},
"friendly_name": {
"description": "A human readable description of this resource.",
"nullable": true,
"type": "string"
},
"identity": {
"description": "Unique external identifier of the Entity",
"nullable": true,
"type": "string"
},
"service_sid": {
"description": "Service Sid.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
},
"sid": {
"description": "A string that uniquely identifies this Factor.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^YF[0-9a-fA-F]{32}$",
"type": "string"
},
"status": {
"description": "The Status of this Factor",
"enum": [
"unverified",
"verified"
],
"nullable": true,
"type": "string"
},
"url": {
"description": "The URL of this resource.",
"format": "uri",
"nullable": true,
"type": "string"
}
},
"type": "object"
},
"verify.v2.service.messaging_configuration": {
"properties": {
"account_sid": {
"description": "The SID of the Account that created the resource",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^AC[0-9a-fA-F]{32}$",
"type": "string"
},
"country": {
"description": "The ISO-3166-1 country code of the country or `all`.",
"nullable": true,
"type": "string"
},
"date_created": {
"description": "The RFC 2822 date and time in GMT when the resource was created",
"format": "date-time",
"nullable": true,
"type": "string"
},
"date_updated": {
"description": "The RFC 2822 date and time in GMT when the resource was last updated",
"format": "date-time",
"nullable": true,
"type": "string"
},
"messaging_service_sid": {
"description": "The SID of the Messaging Service used for this configuration.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^MG[0-9a-fA-F]{32}$",
"type": "string"
},
"service_sid": {
"description": "The SID of the Service that the resource is associated with",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
},
"url": {
"description": "The URL of this resource.",
"format": "uri",
"nullable": true,
"type": "string"
}
},
"type": "object"
},
"verify.v2.service.rate_limit": {
"properties": {
"account_sid": {
"description": "The SID of the Account that created the resource",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^AC[0-9a-fA-F]{32}$",
"type": "string"
},
"date_created": {
"description": "The RFC 2822 date and time in GMT when the resource was created",
"format": "date-time",
"nullable": true,
"type": "string"
},
"date_updated": {
"description": "The RFC 2822 date and time in GMT when the resource was last updated",
"format": "date-time",
"nullable": true,
"type": "string"
},
"description": {
"description": "Description of this Rate Limit",
"nullable": true,
"type": "string"
},
"links": {
"description": "The URLs of related resources",
"nullable": true,
"type": "object"
},
"service_sid": {
"description": "The SID of the Service that the resource is associated with",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
},
"sid": {
"description": "A string that uniquely identifies this Rate Limit.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^RK[0-9a-fA-F]{32}$",
"type": "string"
},
"unique_name": {
"description": "A unique, developer assigned name of this Rate Limit.",
"nullable": true,
"type": "string"
},
"url": {
"description": "The URL of this resource.",
"format": "uri",
"nullable": true,
"type": "string"
}
},
"type": "object"
},
"verify.v2.service.rate_limit.bucket": {
"properties": {
"account_sid": {
"description": "The SID of the Account that created the resource",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^AC[0-9a-fA-F]{32}$",
"type": "string"
},
"date_created": {
"description": "The RFC 2822 date and time in GMT when the resource was created",
"format": "date-time",
"nullable": true,
"type": "string"
},
"date_updated": {
"description": "The RFC 2822 date and time in GMT when the resource was last updated",
"format": "date-time",
"nullable": true,
"type": "string"
},
"interval": {
"description": "Number of seconds that the rate limit will be enforced over.",
"nullable": true,
"type": "integer"
},
"max": {
"description": "Max number of requests.",
"nullable": true,
"type": "integer"
},
"rate_limit_sid": {
"description": "Rate Limit Sid.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^RK[0-9a-fA-F]{32}$",
"type": "string"
},
"service_sid": {
"description": "The SID of the Service that the resource is associated with",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
},
"sid": {
"description": "A string that uniquely identifies this Bucket.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^BL[0-9a-fA-F]{32}$",
"type": "string"
},
"url": {
"description": "The URL of this resource.",
"format": "uri",
"nullable": true,
"type": "string"
}
},
"type": "object"
},
"verify.v2.service.verification": {
"properties": {
"account_sid": {
"description": "The SID of the Account that created the resource",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^AC[0-9a-fA-F]{32}$",
"type": "string"
},
"amount": {
"description": "The amount of the associated PSD2 compliant transaction.",
"nullable": true,
"type": "string"
},
"channel": {
"description": "The verification method used.",
"enum": [
"sms",
"call",
"email",
"whatsapp"
],
"nullable": true,
"type": "string"
},
"date_created": {
"description": "The RFC 2822 date and time in GMT when the resource was created",
"format": "date-time",
"nullable": true,
"type": "string"
},
"date_updated": {
"description": "The RFC 2822 date and time in GMT when the resource was last updated",
"format": "date-time",
"nullable": true,
"type": "string"
},
"lookup": {
"description": "Information about the phone number being verified",
"nullable": true,
"type": "object"
},
"payee": {
"description": "The payee of the associated PSD2 compliant transaction",
"nullable": true,
"type": "string"
},
"send_code_attempts": {
"description": "An array of verification attempt objects.",
"items": {
"type": "object"
},
"nullable": true,
"type": "array"
},
"service_sid": {
"description": "The SID of the Service that the resource is associated with",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
},
"sid": {
"description": "The unique string that identifies the resource",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^VE[0-9a-fA-F]{32}$",
"type": "string"
},
"status": {
"description": "The status of the verification resource",
"nullable": true,
"type": "string"
},
"to": {
"description": "The phone number or email being verified",
"nullable": true,
"type": "string"
},
"url": {
"description": "The absolute URL of the Verification resource",
"format": "uri",
"nullable": true,
"type": "string"
},
"valid": {
"description": "Whether the verification was successful",
"nullable": true,
"type": "boolean"
}
},
"type": "object"
},
"verify.v2.service.verification_check": {
"properties": {
"account_sid": {
"description": "The SID of the Account that created the resource",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^AC[0-9a-fA-F]{32}$",
"type": "string"
},
"amount": {
"description": "The amount of the associated PSD2 compliant transaction.",
"nullable": true,
"type": "string"
},
"channel": {
"description": "The verification method to use",
"enum": [
"sms",
"call",
"email",
"whatsapp"
],
"nullable": true,
"type": "string"
},
"date_created": {
"description": "The ISO 8601 date and time in GMT when the Verification Check resource was created",
"format": "date-time",
"nullable": true,
"type": "string"
},
"date_updated": {
"description": "The ISO 8601 date and time in GMT when the Verification Check resource was last updated",
"format": "date-time",
"nullable": true,
"type": "string"
},
"payee": {
"description": "The payee of the associated PSD2 compliant transaction",
"nullable": true,
"type": "string"
},
"service_sid": {
"description": "The SID of the Service that the resource is associated with",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
},
"sid": {
"description": "The unique string that identifies the resource",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^VE[0-9a-fA-F]{32}$",
"type": "string"
},
"status": {
"description": "The status of the verification resource",
"nullable": true,
"type": "string"
},
"to": {
"description": "The phone number or email being verified",
"nullable": true,
"type": "string"
},
"valid": {
"description": "Whether the verification was successful",
"nullable": true,
"type": "boolean"
}
},
"type": "object"
},
"verify.v2.service.webhook": {
"properties": {
"account_sid": {
"description": "The SID of the Account that created the resource",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^AC[0-9a-fA-F]{32}$",
"type": "string"
},
"date_created": {
"description": "The ISO 8601 date and time in GMT when the resource was created",
"format": "date-time",
"nullable": true,
"type": "string"
},
"date_updated": {
"description": "The ISO 8601 date and time in GMT when the resource was last updated",
"format": "date-time",
"nullable": true,
"type": "string"
},
"event_types": {
"description": "The array of events that this Webhook is subscribed to.",
"items": {
"type": "string"
},
"nullable": true,
"type": "array"
},
"friendly_name": {
"description": "The string that you assigned to describe the webhook",
"nullable": true,
"type": "string"
},
"service_sid": {
"description": "Service Sid.",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
},
"sid": {
"description": "The unique string that identifies the resource",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^YW[0-9a-fA-F]{32}$",
"type": "string"
},
"status": {
"description": "The webhook status",
"enum": [
"enabled",
"disabled"
],
"nullable": true,
"type": "string"
},
"url": {
"description": "The absolute URL of the Webhook resource",
"format": "uri",
"nullable": true,
"type": "string"
},
"version": {
"description": "The webhook version",
"enum": [
"v1",
"v2"
],
"nullable": true,
"type": "string"
},
"webhook_method": {
"description": "The method used when calling the webhook's URL.",
"enum": [
"GET",
"POST"
],
"nullable": true,
"type": "string"
},
"webhook_url": {
"description": "The URL associated with this Webhook.",
"format": "uri",
"nullable": true,
"type": "string"
}
},
"type": "object"
},
"verify.v2.verification_attempt": {
"properties": {
"account_sid": {
"description": "Account Sid",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^AC[0-9a-fA-F]{32}$",
"type": "string"
},
"channel": {
"description": "Channel used for the attempt",
"enum": [
"sms",
"call",
"email",
"whatsapp"
],
"nullable": true,
"type": "string"
},
"channel_data": {
"description": "Object with the channel information for an attempt",
"nullable": true,
"type": "object"
},
"conversion_status": {
"description": "Status of a conversion",
"enum": [
"converted",
"unconverted"
],
"nullable": true,
"type": "string"
},
"date_created": {
"description": "The date this Attempt was created",
"format": "date-time",
"nullable": true,
"type": "string"
},
"date_updated": {
"description": "The date this Attempt was updated",
"format": "date-time",
"nullable": true,
"type": "string"
},
"service_sid": {
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
},
"sid": {
"description": "A string that uniquely identifies this Verification Attempt",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^VL[0-9a-fA-F]{32}$",
"type": "string"
},
"url": {
"format": "uri",
"nullable": true,
"type": "string"
}
},
"type": "object"
},
"verify.v2.verification_template": {
"properties": {
"account_sid": {
"description": "Account Sid",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^AC[0-9a-fA-F]{32}$",
"type": "string"
},
"friendly_name": {
"description": "A string to describe the verification template",
"nullable": true,
"type": "string"
},
"sid": {
"description": "A string that uniquely identifies this Template",
"maxLength": 34,
"minLength": 34,
"nullable": true,
"pattern": "^HJ[0-9a-fA-F]{32}$",
"type": "string"
},
"translations": {
"description": "Ojbect with the template translations.",
"nullable": true,
"type": "object"
}
},
"type": "object"
}
},
"securitySchemes": {
"accountSid_authToken": {
"scheme": "basic",
"type": "http"
}
}
},
"info": {
"contact": {
"email": "support@twilio.com",
"name": "Twilio Support",
"url": "https://support.twilio.com"
},
"description": "This is the public Twilio REST API.",
"license": {
"name": "Apache 2.0",
"url": "https://www.apache.org/licenses/LICENSE-2.0.html"
},
"termsOfService": "https://www.twilio.com/legal/tos",
"title": "Twilio - Verify",
"version": "1.25.0"
},
"openapi": "3.0.1",
"paths": {
"/v2/Attempts": {
"description": "TODO: Resource-level docs",
"get": {
"description": "List all the verification attempts for a given Account.",
"operationId": "ListVerificationAttempt",
"parameters": [
{
"description": "Datetime filter used to query Verification Attempts created after this datetime.",
"in": "query",
"name": "DateCreatedAfter",
"schema": {
"format": "date-time",
"type": "string"
}
},
{
"description": "Datetime filter used to query Verification Attempts created before this datetime.",
"in": "query",
"name": "DateCreatedBefore",
"schema": {
"format": "date-time",
"type": "string"
}
},
{
"description": "Destination of a verification. Depending on the type of channel, it could be a phone number in E.164 format or an email address.",
"in": "query",
"name": "ChannelData.To",
"schema": {
"type": "string"
}
},
{
"description": "How many resources to return in each list page. The default is 50, and the maximum is 1000.",
"in": "query",
"name": "PageSize",
"schema": {
"maximum": 1000,
"minimum": 1,
"type": "integer"
}
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"properties": {
"attempts": {
"items": {
"$ref": "#/components/schemas/verify.v2.verification_attempt"
},
"type": "array"
},
"meta": {
"properties": {
"first_page_url": {
"format": "uri",
"type": "string"
},
"key": {
"type": "string"
},
"next_page_url": {
"format": "uri",
"type": "string"
},
"page": {
"type": "integer"
},
"page_size": {
"type": "integer"
},
"previous_page_url": {
"format": "uri",
"type": "string"
},
"url": {
"format": "uri",
"type": "string"
}
},
"type": "object"
}
},
"title": "ListVerificationAttemptResponse",
"type": "object"
}
}
},
"description": "OK"
}
},
"security": [
{
"accountSid_authToken": []
}
],
"x-maturity": [
"GA"
]
},
"servers": [
{
"url": "https://verify.twilio.com"
}
],
"x-twilio": {
"defaultOutputProperties": [
"sid",
"date_created",
"date_updated",
"conversion_status",
"channel"
],
"pathType": "list"
}
},
"/v2/Attempts/{Sid}": {
"description": "TODO: Resource-level docs",
"get": {
"description": "Fetch a specific verification attempt.",
"operationId": "FetchVerificationAttempt",
"parameters": [
{
"description": "The unique SID identifier of a Verification Attempt",
"in": "path",
"name": "Sid",
"required": true,
"schema": {
"maxLength": 34,
"minLength": 34,
"pattern": "^VL[0-9a-fA-F]{32}$",
"type": "string"
}
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/verify.v2.verification_attempt"
}
}
},
"description": "OK"
}
},
"security": [
{
"accountSid_authToken": []
}
],
"x-maturity": [
"GA"
]
},
"servers": [
{
"url": "https://verify.twilio.com"
}
],
"x-twilio": {
"defaultOutputProperties": [
"sid",
"date_created",
"date_updated",
"conversion_status",
"channel"
],
"pathType": "instance"
}
},
"/v2/Forms/{FormType}": {
"description": "TODO: Resource-level docs",
"get": {
"description": "Fetch the forms for a specific Form Type.",
"operationId": "FetchForm",
"parameters": [
{
"description": "The Type of this Form. Currently only `form-push` is supported.",
"in": "path",
"name": "FormType",
"required": true,
"schema": {
"enum": [
"form-push"
],
"type": "string"
}
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/verify.v2.form"
}
}
},
"description": "OK"
}
},
"security": [
{
"accountSid_authToken": []
}
],
"x-maturity": [
"Beta"
]
},
"servers": [
{
"url": "https://verify.twilio.com"
}
],
"x-twilio": {
"defaultOutputProperties": [
"form_type"
],
"pathType": "instance"
}
},
"/v2/Services": {
"description": "TODO: Resource-level docs",
"get": {
"description": "Retrieve a list of all Verification Services for an account.",
"operationId": "ListService",
"parameters": [
{
"description": "How many resources to return in each list page. The default is 50, and the maximum is 1000.",
"in": "query",
"name": "PageSize",
"schema": {
"maximum": 1000,
"minimum": 1,
"type": "integer"
}
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"properties": {
"meta": {
"properties": {
"first_page_url": {
"format": "uri",
"type": "string"
},
"key": {
"type": "string"
},
"next_page_url": {
"format": "uri",
"type": "string"
},
"page": {
"type": "integer"
},
"page_size": {
"type": "integer"
},
"previous_page_url": {
"format": "uri",
"type": "string"
},
"url": {
"format": "uri",
"type": "string"
}
},
"type": "object"
},
"services": {
"items": {
"$ref": "#/components/schemas/verify.v2.service"
},
"type": "array"
}
},
"title": "ListServiceResponse",
"type": "object"
}
}
},
"description": "OK"
}
},
"security": [
{
"accountSid_authToken": []
}
],
"x-maturity": [
"GA"
]
},
"post": {
"description": "Create a new Verification Service.",
"operationId": "CreateService",
"requestBody": {
"content": {
"application/x-www-form-urlencoded": {
"schema": {
"properties": {
"CodeLength": {
"description": "The length of the verification code to generate. Must be an integer value between 4 and 10, inclusive.",
"type": "integer"
},
"CustomCodeEnabled": {
"description": "Whether to allow sending verifications with a custom code instead of a randomly generated one. Not available for all customers.",
"type": "boolean"
},
"DefaultTemplateSid": {
"description": "The default message [template](https://www.twilio.com/docs/verify/api/templates). Will be used for all SMS verifications unless explicitly overriden. SMS channel only.",
"maxLength": 34,
"minLength": 34,
"pattern": "^HJ[0-9a-fA-F]{32}$",
"type": "string"
},
"DoNotShareWarningEnabled": {
"description": "Whether to add a security warning at the end of an SMS verification body. Disabled by default and applies only to SMS. Example SMS body: `Your AppName verification code is: 1234. Don\u2019t share this code with anyone; our employees will never ask for the code`",
"type": "boolean"
},
"DtmfInputRequired": {
"description": "Whether to ask the user to press a number before delivering the verify code in a phone call.",
"type": "boolean"
},
"FriendlyName": {
"description": "A descriptive string that you create to describe the verification service. It can be up to 30 characters long. **This value should not contain PII.**",
"type": "string"
},
"LookupEnabled": {
"description": "Whether to perform a lookup with each verification started and return info about the phone number.",
"type": "boolean"
},
"Psd2Enabled": {
"description": "Whether to pass PSD2 transaction parameters when starting a verification.",
"type": "boolean"
},
"Push.ApnCredentialSid": {
"description": "Optional configuration for the Push factors. Set the APN Credential for this service. This will allow to send push notifications to iOS devices. See [Credential Resource](https://www.twilio.com/docs/notify/api/credential-resource)",
"maxLength": 34,
"minLength": 34,
"pattern": "^CR[0-9a-fA-F]{32}$",
"type": "string"
},
"Push.FcmCredentialSid": {
"description": "Optional configuration for the Push factors. Set the FCM Credential for this service. This will allow to send push notifications to Android devices. See [Credential Resource](https://www.twilio.com/docs/notify/api/credential-resource)",
"maxLength": 34,
"minLength": 34,
"pattern": "^CR[0-9a-fA-F]{32}$",
"type": "string"
},
"Push.IncludeDate": {
"description": "Optional configuration for the Push factors. If true, include the date in the Challenge's reponse. Otherwise, the date is omitted from the response. See [Challenge](https://www.twilio.com/docs/verify/api/challenge) resource\u2019s details parameter for more info. Default: true",
"type": "boolean"
},
"SkipSmsToLandlines": {
"description": "Whether to skip sending SMS verifications to landlines. Requires `lookup_enabled`.",
"type": "boolean"
},
"Totp.CodeLength": {
"description": "Optional configuration for the TOTP factors. Number of digits for generated TOTP codes. Must be between 3 and 8, inclusive. Defaults to 6",
"type": "integer"
},
"Totp.Issuer": {
"description": "Optional configuration for the TOTP factors. Set TOTP Issuer for this service. This will allow to configure the issuer of the TOTP URI. Defaults to the service friendly name if not provided.",
"type": "string"
},
"Totp.Skew": {
"description": "Optional configuration for the TOTP factors. The number of time-steps, past and future, that are valid for validation of TOTP codes. Must be between 0 and 2, inclusive. Defaults to 1",
"type": "integer"
},
"Totp.TimeStep": {
"description": "Optional configuration for the TOTP factors. 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. Defaults to 30 seconds",
"type": "integer"
},
"TtsName": {
"description": "The name of an alternative text-to-speech service to use in phone calls. Applies only to TTS languages.",
"type": "string"
}
},
"required": [
"FriendlyName"
],
"title": "CreateServiceRequest",
"type": "object"
}
}
}
},
"responses": {
"201": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/verify.v2.service"
}
}
},
"description": "Created"
}
},
"security": [
{
"accountSid_authToken": []
}
],
"x-maturity": [
"GA"
]
},
"servers": [
{
"url": "https://verify.twilio.com"
}
],
"x-twilio": {
"defaultOutputProperties": [
"sid",
"friendly_name",
"date_created"
],
"pathType": "list"
}
},
"/v2/Services/{ServiceSid}/AccessTokens": {
"description": "TODO: Resource-level docs",
"post": {
"description": "Create a new enrollment Access Token for the Entity",
"operationId": "CreateAccessToken",
"parameters": [
{
"description": "The unique SID identifier of the Service.",
"in": "path",
"name": "ServiceSid",
"required": true,
"schema": {
"maxLength": 34,
"minLength": 34,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/x-www-form-urlencoded": {
"schema": {
"properties": {
"FactorFriendlyName": {
"description": "The friendly name of the factor that is going to be created with this access token",
"type": "string"
},
"FactorType": {
"description": "The Type of this Factor. Eg. `push`",
"enum": [
"push"
],
"type": "string"
},
"Identity": {
"description": "The unique external identifier for the Entity of the Service. This identifier should be immutable, not PII, and generated by your external system, such as your user's UUID, GUID, or SID.",
"type": "string"
}
},
"required": [
"Identity",
"FactorType"
],
"title": "CreateAccessTokenRequest",
"type": "object"
}
}
}
},
"responses": {
"201": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/verify.v2.service.access_token"
}
}
},
"description": "Created"
}
},
"security": [
{
"accountSid_authToken": []
}
],
"x-maturity": [
"Beta"
]
},
"servers": [
{
"url": "https://verify.twilio.com"
}
],
"x-twilio": {
"defaultOutputProperties": [
"token"
],
"pathType": "list"
}
},
"/v2/Services/{ServiceSid}/Entities": {
"description": "TODO: Resource-level docs",
"get": {
"description": "Retrieve a list of all Entities for a Service.",
"operationId": "ListEntity",
"parameters": [
{
"description": "The unique SID identifier of the Service.",
"in": "path",
"name": "ServiceSid",
"required": true,
"schema": {
"maxLength": 34,
"minLength": 34,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
}
},
{
"description": "How many resources to return in each list page. The default is 50, and the maximum is 1000.",
"in": "query",
"name": "PageSize",
"schema": {
"maximum": 1000,
"minimum": 1,
"type": "integer"
}
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"properties": {
"entities": {
"items": {
"$ref": "#/components/schemas/verify.v2.service.entity"
},
"type": "array"
},
"meta": {
"properties": {
"first_page_url": {
"format": "uri",
"type": "string"
},
"key": {
"type": "string"
},
"next_page_url": {
"format": "uri",
"type": "string"
},
"page": {
"type": "integer"
},
"page_size": {
"type": "integer"
},
"previous_page_url": {
"format": "uri",
"type": "string"
},
"url": {
"format": "uri",
"type": "string"
}
},
"type": "object"
}
},
"title": "ListEntityResponse",
"type": "object"
}
}
},
"description": "OK"
}
},
"security": [
{
"accountSid_authToken": []
}
],
"x-maturity": [
"Beta"
]
},
"post": {
"description": "Create a new Entity for the Service",
"operationId": "CreateEntity",
"parameters": [
{
"description": "The unique SID identifier of the Service.",
"in": "path",
"name": "ServiceSid",
"required": true,
"schema": {
"maxLength": 34,
"minLength": 34,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/x-www-form-urlencoded": {
"schema": {
"properties": {
"Identity": {
"description": "The unique external identifier for the Entity of the Service. 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.",
"type": "string"
}
},
"required": [
"Identity"
],
"title": "CreateEntityRequest",
"type": "object"
}
}
}
},
"responses": {
"201": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/verify.v2.service.entity"
}
}
},
"description": "Created"
}
},
"security": [
{
"accountSid_authToken": []
}
],
"x-maturity": [
"Beta"
]
},
"servers": [
{
"url": "https://verify.twilio.com"
}
],
"x-twilio": {
"defaultOutputProperties": [
"sid",
"identity",
"date_created"
],
"pathType": "list"
}
},
"/v2/Services/{ServiceSid}/Entities/{Identity}": {
"delete": {
"description": "Delete a specific Entity.",
"operationId": "DeleteEntity",
"parameters": [
{
"description": "The unique SID identifier of the Service.",
"in": "path",
"name": "ServiceSid",
"required": true,
"schema": {
"maxLength": 34,
"minLength": 34,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
}
},
{
"description": "The unique external identifier for the Entity of the Service. 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.",
"in": "path",
"name": "Identity",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"204": {
"description": "The resource was deleted successfully."
}
},
"security": [
{
"accountSid_authToken": []
}
],
"x-maturity": [
"Beta"
]
},
"description": "TODO: Resource-level docs",
"get": {
"description": "Fetch a specific Entity.",
"operationId": "FetchEntity",
"parameters": [
{
"description": "The unique SID identifier of the Service.",
"in": "path",
"name": "ServiceSid",
"required": true,
"schema": {
"maxLength": 34,
"minLength": 34,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
}
},
{
"description": "The unique external identifier for the Entity of the Service. 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.",
"in": "path",
"name": "Identity",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/verify.v2.service.entity"
}
}
},
"description": "OK"
}
},
"security": [
{
"accountSid_authToken": []
}
],
"x-maturity": [
"Beta"
]
},
"servers": [
{
"url": "https://verify.twilio.com"
}
],
"x-twilio": {
"defaultOutputProperties": [
"sid",
"identity",
"date_created"
],
"pathType": "instance"
}
},
"/v2/Services/{ServiceSid}/Entities/{Identity}/Challenges": {
"description": "TODO: Resource-level docs",
"get": {
"description": "Retrieve a list of all Challenges for a Factor.",
"operationId": "ListChallenge",
"parameters": [
{
"description": "The unique SID identifier of the Service.",
"in": "path",
"name": "ServiceSid",
"required": true,
"schema": {
"maxLength": 34,
"minLength": 34,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
}
},
{
"description": "Customer unique identity for the Entity owner of the Challenge. 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.",
"in": "path",
"name": "Identity",
"required": true,
"schema": {
"type": "string"
}
},
{
"description": "The unique SID identifier of the Factor.",
"in": "query",
"name": "FactorSid",
"schema": {
"maxLength": 34,
"minLength": 34,
"pattern": "^YF[0-9a-fA-F]{32}$",
"type": "string"
}
},
{
"description": "The Status of the Challenges to fetch. One of `pending`, `expired`, `approved` or `denied`.",
"in": "query",
"name": "Status",
"schema": {
"enum": [
"pending",
"expired",
"approved",
"denied"
],
"type": "string"
}
},
{
"description": "The desired sort order of the Challenges list. One of `asc` or `desc` for ascending and descending respectively. Defaults to `asc`.",
"in": "query",
"name": "Order",
"schema": {
"enum": [
"asc",
"desc"
],
"type": "string"
}
},
{
"description": "How many resources to return in each list page. The default is 50, and the maximum is 1000.",
"in": "query",
"name": "PageSize",
"schema": {
"maximum": 1000,
"minimum": 1,
"type": "integer"
}
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"properties": {
"challenges": {
"items": {
"$ref": "#/components/schemas/verify.v2.service.entity.challenge"
},
"type": "array"
},
"meta": {
"properties": {
"first_page_url": {
"format": "uri",
"type": "string"
},
"key": {
"type": "string"
},
"next_page_url": {
"format": "uri",
"type": "string"
},
"page": {
"type": "integer"
},
"page_size": {
"type": "integer"
},
"previous_page_url": {
"format": "uri",
"type": "string"
},
"url": {
"format": "uri",
"type": "string"
}
},
"type": "object"
}
},
"title": "ListChallengeResponse",
"type": "object"
}
}
},
"description": "OK"
}
},
"security": [
{
"accountSid_authToken": []
}
],
"x-maturity": [
"Beta"
]
},
"post": {
"description": "Create a new Challenge for the Factor",
"operationId": "CreateChallenge",
"parameters": [
{
"description": "The unique SID identifier of the Service.",
"in": "path",
"name": "ServiceSid",
"required": true,
"schema": {
"maxLength": 34,
"minLength": 34,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
}
},
{
"description": "Customer unique identity for the Entity owner of the Challenge. 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.",
"in": "path",
"name": "Identity",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/x-www-form-urlencoded": {
"schema": {
"properties": {
"AuthPayload": {
"description": "Optional payload used to verify the Challenge upon creation. Only used with a Factor of type `totp` to carry the TOTP code that needs to be verified. For `TOTP` this value must be between 3 and 8 characters long.",
"type": "string"
},
"Details.Fields": {
"description": "A list of objects that describe the Fields included in the Challenge. Each object contains the label and value of the field, the label can be up to 36 characters in length and the value can be up to 128 characters in length. Used when `factor_type` is `push`. There can be up to 20 details fields.",
"items": {
"type": "object"
},
"type": "array"
},
"Details.Message": {
"description": "Shown to the user when the push notification arrives. Required when `factor_type` is `push`. Can be up to 256 characters in length",
"type": "string"
},
"ExpirationDate": {
"description": "The date-time when this Challenge expires, given in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format. The default value is five (5) minutes after Challenge creation. The max value is sixty (60) minutes after creation.",
"format": "date-time",
"type": "string"
},
"FactorSid": {
"description": "The unique SID identifier of the Factor.",
"maxLength": 34,
"minLength": 34,
"pattern": "^YF[0-9a-fA-F]{32}$",
"type": "string"
},
"HiddenDetails": {
"description": "Details provided to give context about the Challenge. Not shown to the end user. It must be a stringified JSON with only strings values eg. `{\"ip\": \"172.168.1.234\"}`. Can be up to 1024 characters in length",
"type": "object"
}
},
"required": [
"FactorSid"
],
"title": "CreateChallengeRequest",
"type": "object"
}
}
}
},
"responses": {
"201": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/verify.v2.service.entity.challenge"
}
}
},
"description": "Created"
}
},
"security": [
{
"accountSid_authToken": []
}
],
"x-maturity": [
"Beta"
]
},
"servers": [
{
"url": "https://verify.twilio.com"
}
],
"x-twilio": {
"defaultOutputProperties": [
"factor_type",
"status",
"responded_reason",
"date_created"
],
"pathType": "list"
}
},
"/v2/Services/{ServiceSid}/Entities/{Identity}/Challenges/{ChallengeSid}/Notifications": {
"description": "TODO: Resource-level docs",
"post": {
"description": "Create a new Notification for the corresponding Challenge",
"operationId": "CreateNotification",
"parameters": [
{
"description": "The unique SID identifier of the Service.",
"in": "path",
"name": "ServiceSid",
"required": true,
"schema": {
"maxLength": 34,
"minLength": 34,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
}
},
{
"description": "Customer unique identity for the Entity owner of the Challenge. 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.",
"in": "path",
"name": "Identity",
"required": true,
"schema": {
"type": "string"
}
},
{
"description": "The unique SID identifier of the Challenge.",
"in": "path",
"name": "ChallengeSid",
"required": true,
"schema": {
"maxLength": 34,
"minLength": 34,
"pattern": "^YC[0-9a-fA-F]{32}$",
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/x-www-form-urlencoded": {
"schema": {
"properties": {
"Ttl": {
"description": "How long, in seconds, the notification is valid. Can be an integer between 0 and 300. Default is 300. Delivery is attempted until the TTL elapses, even if the device is offline. 0 means that the notification delivery is attempted immediately, only once, and is not stored for future delivery.",
"type": "integer"
}
},
"title": "CreateNotificationRequest",
"type": "object"
}
}
}
},
"responses": {
"201": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/verify.v2.service.entity.challenge.notification"
}
}
},
"description": "Created"
}
},
"security": [
{
"accountSid_authToken": []
}
],
"x-maturity": [
"Beta"
]
},
"servers": [
{
"url": "https://verify.twilio.com"
}
],
"x-twilio": {
"defaultOutputProperties": [
"sid",
"identity",
"challenge_sid",
"date_created"
],
"pathType": "list"
}
},
"/v2/Services/{ServiceSid}/Entities/{Identity}/Challenges/{Sid}": {
"description": "TODO: Resource-level docs",
"get": {
"description": "Fetch a specific Challenge.",
"operationId": "FetchChallenge",
"parameters": [
{
"description": "The unique SID identifier of the Service.",
"in": "path",
"name": "ServiceSid",
"required": true,
"schema": {
"maxLength": 34,
"minLength": 34,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
}
},
{
"description": "Customer unique identity for the Entity owner of the Challenges. 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.",
"in": "path",
"name": "Identity",
"required": true,
"schema": {
"type": "string"
}
},
{
"description": "A 34 character string that uniquely identifies this Challenge.",
"in": "path",
"name": "Sid",
"required": true,
"schema": {
"maxLength": 34,
"minLength": 34,
"pattern": "^YC[0-9a-fA-F]{32}$",
"type": "string"
}
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/verify.v2.service.entity.challenge"
}
}
},
"description": "OK"
}
},
"security": [
{
"accountSid_authToken": []
}
],
"x-maturity": [
"Beta"
]
},
"post": {
"description": "Verify a specific Challenge.",
"operationId": "UpdateChallenge",
"parameters": [
{
"description": "The unique SID identifier of the Service.",
"in": "path",
"name": "ServiceSid",
"required": true,
"schema": {
"maxLength": 34,
"minLength": 34,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
}
},
{
"description": "Customer unique identity for the Entity owner of the Challenge. 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.",
"in": "path",
"name": "Identity",
"required": true,
"schema": {
"type": "string"
}
},
{
"description": "A 34 character string that uniquely identifies this Challenge.",
"in": "path",
"name": "Sid",
"required": true,
"schema": {
"maxLength": 34,
"minLength": 34,
"pattern": "^YC[0-9a-fA-F]{32}$",
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/x-www-form-urlencoded": {
"schema": {
"properties": {
"AuthPayload": {
"description": "The optional payload needed to verify the Challenge. E.g., a TOTP would use the numeric code. For `TOTP` this value must be between 3 and 8 characters long. For `Push` this value can be up to 5456 characters in length",
"type": "string"
}
},
"title": "UpdateChallengeRequest",
"type": "object"
}
}
}
},
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/verify.v2.service.entity.challenge"
}
}
},
"description": "OK"
}
},
"security": [
{
"accountSid_authToken": []
}
],
"x-maturity": [
"Beta"
]
},
"servers": [
{
"url": "https://verify.twilio.com"
}
],
"x-twilio": {
"defaultOutputProperties": [
"factor_type",
"status",
"responded_reason",
"date_created"
],
"pathType": "instance"
}
},
"/v2/Services/{ServiceSid}/Entities/{Identity}/Factors": {
"description": "TODO: Resource-level docs",
"get": {
"description": "Retrieve a list of all Factors for an Entity.",
"operationId": "ListFactor",
"parameters": [
{
"description": "The unique SID identifier of the Service.",
"in": "path",
"name": "ServiceSid",
"required": true,
"schema": {
"maxLength": 34,
"minLength": 34,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
}
},
{
"description": "Customer unique identity for the Entity owner of the Factors. 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.",
"in": "path",
"name": "Identity",
"required": true,
"schema": {
"type": "string"
}
},
{
"description": "How many resources to return in each list page. The default is 50, and the maximum is 1000.",
"in": "query",
"name": "PageSize",
"schema": {
"maximum": 1000,
"minimum": 1,
"type": "integer"
}
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"properties": {
"factors": {
"items": {
"$ref": "#/components/schemas/verify.v2.service.entity.factor"
},
"type": "array"
},
"meta": {
"properties": {
"first_page_url": {
"format": "uri",
"type": "string"
},
"key": {
"type": "string"
},
"next_page_url": {
"format": "uri",
"type": "string"
},
"page": {
"type": "integer"
},
"page_size": {
"type": "integer"
},
"previous_page_url": {
"format": "uri",
"type": "string"
},
"url": {
"format": "uri",
"type": "string"
}
},
"type": "object"
}
},
"title": "ListFactorResponse",
"type": "object"
}
}
},
"description": "OK"
}
},
"security": [
{
"accountSid_authToken": []
}
],
"x-maturity": [
"Beta"
]
},
"post": {
"description": "Create a new Factor for the Entity",
"operationId": "CreateNewFactor",
"parameters": [
{
"description": "The unique SID identifier of the Service.",
"in": "path",
"name": "ServiceSid",
"required": true,
"schema": {
"maxLength": 34,
"minLength": 34,
"pattern": "^VA[0-9a-fA-F]{32}$",
"type": "string"
}
},
{
"description": "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.",
"in": "path",
"name": "Identity",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"application/x-www-form-urlencoded": {
"schema": {
"properties": {
"Binding.Alg": {
"description": "The algorithm used when `factor_type` is `push`. Algorithm supported: `ES256`",
"type": "string"
},
"Binding.PublicKey": {
"description": "The Ecdsa public key in PKIX, ASN.1 DER format encoded in Base64.\n\nRequired when `factor_type` is `push`",
"type": "string"
},
"Binding.Secret": {
"description": "The shared secret for TOTP factors encoded in Base32. This can be provided when creating the Factor, otherwise it will be generated.\n\nUsed when `factor_type` is `totp`",
"type": "string"
},
"Config.Alg": {
"description": "The algorithm used to derive the TOTP codes. Can be `sha1`, `sha256` or `sha512`. Defaults to `sha1`.\n\nUsed when `factor_type` is `totp`",
"enum": [
"sha1",
"sha256",
"sha512"
],
"type": "string"
},
"Config.AppId": {
"description": "The ID that uniquely identifies your app in the Google or Apple store, such as `com.example.myapp`. It can be up to 100 characters long.\n\nRequired when `factor_type` is `push`.",
"type": "string"
},
"Config.CodeLength": {
"description": "Number of digits for generated TOTP codes. Must be between 3 and 8, inclusive. The default value is defined at the service level in the property `totp.code_length`. If not configured defaults to 6.\n\nUsed when `factor_type` is `totp`",
"type": "integer"
},
"Config.NotificationPlatform": {
"description": "The transport technology used to generate the Notification Token. Can be `apn`, `fcm` or `none`.\n\nRequired when `factor_type` is `push`.",
"enum": [
"apn",
"fcm",
"none"
],
"type": "string"
},
"Config.NotificationToken": {
"description": "For APN, the device token. For FCM, the registration token. It is used to send the push notifications. Must be between 32 and 255 characters long.\n\nRequired when `factor_type` is `push`.",
"type": "string"
},
"Config.SdkVersion": {
"description": "The Verify Push SDK version used to configure the factor\n\nRequired when `factor_type` is `push`",
"type": "string"
},
"Config.Skew": {
"description": "The number of time-steps, past and future, that are valid for validation of TOTP codes. Must be between 0 and 2, inclusive. The default value is defined at the service level in the property `totp.skew`. If not configured defaults to 1.\n\nUsed when `factor_type` is `totp`",
"type": "integer"
},
"Config.TimeStep": {
"description": "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. The default value is defined at the service level in the property `totp.time_step`. Defaults to 30 seconds if not configured.\n\nUsed when `factor_type` is `totp`",
"type": "integer"
},
"FactorType": {
"description": "The Type of this Factor. Currently `push` and `totp` are supported. For `totp` to work, you need to contact [Twilio sales](https://www.twilio.com/help/sales) first to have the Verify TOTP feature enabled for your Twilio account.",
"enum": [
"push",
"totp"
],
"type": "string"
},
"FriendlyName": {
"description": "The friendly name of this Factor. This can be any string up to 64 characters, meant for humans to distinguish between Factors.\nFor `factor_type` `push`, this could be a device name.\nFor `factor_type` `totp`, this value is used as the \u201caccount name\u201d in constructing the `binding.uri` property.\nAt the same time, we recommend avoiding providing PII.",
"type": "string"
}
},
"required": [
"FriendlyName",
"FactorType"
],
"title": "CreateNewFactorRequest",
"type": "object"
}