Navigation

The challenge object

Attributes


id string

The unique identifier of the challenge.


user object

The user being challenged

Child parameters
user.id string

The unique identifier of the user.


user.external_id string

The external identifier of the account associated with the challenge.


user.email string

The obfuscated email of the user who is challenged.


user.phone string

The obfuscated phone number of the user who is challenged.


limit object

The challenge limit state is a representation of a users attached devices relative to the the project environment settings.

Child parameters
limit.is_exceeded boolean

Whether the challenge currently satisfies the device limit conditions. is_exceeded should be false before completing the challenge.


limit.overall number

The overall number of devices required to be kicked to satisfy the challenge conditions. See the kick a challenge device endpoint for more information.


limit.mobile number

The number of mobile devices required to be kicked to satisfy the challenge conditions. See the kick a challenge device endpoint for more information.


limit.tablet number

The number of tablet devices required to be kicked to satisfy the challenge conditions. See the kick a challenge device endpoint for more information.


limit.desktop number

The number of desktop devices required to be kicked to satisfy the challenge conditions. See the kick a challenge device endpoint for more information.


status enum

One of initiated, pending, delivered, delivery_failed, delivery_delayed, bounced, verified, failed, overridden, postponed, completed, admin_notified, skipped. Describes the current status of the challenge.

Possible enum values
initiated

The challenge has been initiated.


pending

The challenge is pending verification.


delivered

The challenge has been delivered.


delivery_failed

The challenge delivery has failed.


delivery_delayed

The challenge delivery has been delayed.


bounced

The challenge delivery has bounced.


verified

The challenge has been verified.


failed

The challenge has failed.


overridden

The challenge has been overridden.


postponed

The challenge has been postponed.


completed

The challenge has been completed.


admin_notified

The admin has been notified.


skipped

The challenge has been skipped.


reasons string[]

The reasons the challenge was initiated.

Possible array values
limit_exceeded

The user has exceeded the device limit.


concurrency

The user has exceeded the device concurrency limit.


impossible_travel

The user has traveled an impossible distance in a short period of time.


new_fingerprint

The user has a new device fingerprint.


new_ip

The user has a new IP address.


invalid_email

The user has an invalid email address.


disposable_email

The user has used a disposable email address.


webmail_email

The user has used a webmail email address.


accept_all_emails

The users email domain is a catch-all email domain.


multi_accounting

The user has multiple accounts on the project.


createdAt date

The date and time the challenge was created.


updatedAt date

The date and time the challenge was updated.

The challenge object
{
  "_id": "649873be6e8b6f9b33722a0c",
  "user": {
    "_id": "649873be6e8b6f9b33722a0c",
    "external_id": "external_account_id",
    "email": "ab*****@rupt.dev",
    "phone": "******34",
  },
  "status": "pending",
  "reasons": ["limit_exceeded", "concurrency"],
  "createdAt": "2021-09-01T00:00:00.000Z",
  "updatedAt": "2021-09-01T00:00:00.000Z"
}