Verify Request and Response Schemas
The Verify request and response schemas follow the JSON Schema standard. See JSON Schema for more information about the standard.
When making a Verify request using POST (and only when using POST), you can include an optional email_address
field with a String value. For information about how to send an email address and how Arkose uses it, see the Knowledge Base (support login required) here and here. Do not use the email_address
field until you have read its documentation and/or spoken to your Arkose rep about it.
{
"type": "object",
"properties": {
"private_key": {
"description": "The private key associated with EC that served this session",
"type": "string"
},
"session_token": {
"description": "The session token which identifies the session to verify",
"type": "string"
},
"log_data": {
"description": "A field to allow a free form piece of string data",
"type": "string"
}
},
"required": [
"private_key",
"session_token"
]
}
{
"oneOf": [
{
"description": "error response",
"type": "object",
"properties": {
"error": {
"type": "string"
},
"verified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"error",
"verified"
]
},
{
"description": "simple mode",
"type": "integer",
"default": 0
},
{
"type": "object",
"properties": {
"session_details": {
"type": "object",
"properties": {
"solved": {
"type": "boolean",
"default": false
},
"session": {
"type": [
"string",
"null"
],
"pattern": "^[0-9A-Fa-f]+\\.[0-9]{10}$",
"default": null
},
"session_created": {
"type": [
"string",
"null"
],
"format": "date-time",
"default": null
},
"check_answer": {
"type": [
"string",
"null"
],
"format": "date-time",
"default": null
},
"verified": {
"type": "string",
"format": "date-time"
},
"attempted": {
"type": "boolean",
"default": false
},
"security_level": {
"type": "integer",
"minimum": 0,
"maximum": 500,
"default": 0
},
"session_is_legit": {
"type": "boolean",
"default": false
},
"previously_verified": {
"type": "boolean",
"default": false
},
"session_timed_out": {
"type": "boolean",
"default": false
},
"suppress_limited": {
"type": "boolean",
"default": false
},
"theme_arg_invalid": {
"type": "boolean",
"default": false
},
"suppressed": {
"type": "boolean",
"default": false
},
"punishable_actioned": {
"type": "boolean",
"default": false
},
"telltale_user": {
"type": [
"string",
"null"
],
"minLength": 0,
"maxLength": 128,
"default": null
},
"telltale_origin": {
"type": [
"string",
"null"
],
"minLength": 0,
"maxLength": 128,
"default": null
},
"failed_low_sec_validation": {
"type": "boolean",
"default": false
},
"lowsec_error": {
"type": [
"string",
"null"
],
"enum": [
"user_credits",
"rate_limit_local",
"validation_checks",
"rate_limit_global",
null
],
"default": null
},
"lowsec_level_denied": {
"type": [
"integer",
"null"
],
"minimum": 0,
"maximum": 500,
"default": null
},
"ua": {
"type": [
"string",
"null"
],
"default": null
},
"ip_rep_list": {
"type": [
"string",
"null"
],
"enum": [
"tor",
"sfs_tor",
"sfs",
null
],
"default": null
},
"optional": {
"type": [
"object",
"null"
],
"default": null
},
"game_number_limit_reached": {
"description": "Whether the maximum number of game retries (if set) is reached",
"type": "boolean",
"default": false
},
"user_language_shown": {
"description": "Shows the language code of the language in which the challenge was presented to the user",
"type": [
"string",
"null"
],
"minLength": 0,
"maxLength": 10,
"default": null
},
"device_id": {
"description": "Device id returned from detection hub",
"type": [
"string",
"null"
],
"default": null
},
"telltale_list": {
"description": "The list of telltales that were identified as possible candidates during a session",
"type": [
"array",
"null"
],
"items": {
"type": "string",
"minLength": 0,
"maxLength": 128
},
"default": null
},
"challenge_type": {
"description": "The type of challenge that the end-user solved",
"type": [
"string",
"null"
],
"enum": [
"audio",
"transparent",
"visual",
"pow",
"pow+visual",
"pow+audio",
null
],
"default": null
}
},
"required": [
"solved",
"session",
"session_created",
"check_answer",
"verified",
"previously_verified",
"session_timed_out",
"suppress_limited",
"theme_arg_invalid",
"suppressed",
"attempted",
"punishable_actioned",
"telltale_user",
"session_is_legit",
"failed_low_sec_validation",
"lowsec_error",
"lowsec_level_denied",
"ip_rep_list",
"security_level",
"ua",
"optional",
"game_number_limit_reached",
"user_language_shown",
"telltale_list",
"challenge_type"
]
},
"fingerprint": {
"type": "object",
"properties": {
"browser_characteristics": {
"type": "object",
"properties": {
"browser_name": {
"type": [
"string",
"null"
],
"default": null
},
"browser_version": {
"type": [
"string",
"null"
],
"default": null
},
"color_depth": {
"type": [
"integer",
"null"
],
"default": null
},
"session_storage": {
"type": "boolean",
"default": false
},
"indexed_database": {
"type": "boolean",
"default": false
},
"canvas_fingerprint": {
"type": [
"integer",
"null"
],
"default": null
}
},
"default": {
"browser_name": null,
"browser_version": null,
"color_depth": null,
"session_storage": false,
"indexed_database": false,
"canvas_fingerprint": null
},
"required": [
"browser_name",
"browser_version",
"color_depth",
"session_storage",
"indexed_database",
"canvas_fingerprint"
]
},
"device_characteristics": {
"type": "object",
"properties": {
"operating_system": {
"type": [
"string",
"null"
],
"default": null,
"examples": [
"Windows",
"OS X"
]
},
"operating_system_version": {
"type": [
"string",
"null"
],
"default": null,
"examples": [
"10",
"Mojave"
]
},
"screen_resolution": {
"type": [
"array",
"null"
],
"items": {
"type": "integer"
},
"default": null,
"examples": [
[
1920,
1080
]
]
},
"max_resolution_supported": {
"type": [
"array",
"null"
],
"items": {
"type": "integer"
},
"default": null,
"examples": [
[
1280,
720
]
]
},
"behavior": {
"type": "boolean",
"default": false
},
"cpu_class": {
"type": [
"string",
"null"
],
"default": null,
"examples": [
"x86",
"ARM"
]
},
"platform": {
"type": [
"string",
"null"
],
"default": null,
"examples": [
"MacIntel",
"Win32"
]
},
"touch_support": {
"type": "boolean",
"default": false
},
"hardware_concurrency": {
"type": [
"integer",
"null"
],
"default": null
}
},
"default": {
"operating_system": null,
"operating_system_version": null,
"screen_resolution": null,
"max_resolution_supported": null,
"behavior": false,
"cpu_class": null,
"platform": null,
"touch_support": false,
"hardware_concurrency": null
},
"required": [
"operating_system",
"operating_system_version",
"screen_resolution",
"max_resolution_supported",
"behavior",
"cpu_class",
"platform",
"touch_support",
"hardware_concurrency"
]
},
"user_preferences": {
"type": "object",
"properties": {
"timezone_offset": {
"type": [
"integer",
"null"
],
"default": null,
"examples": [
1000,
-800,
0
]
}
},
"default": {
"timezone_offset": null
},
"required": [
"timezone_offset"
]
}
},
"required": [
"browser_characteristics",
"device_characteristics",
"user_preferences"
]
},
"ip_intelligence": {
"type": "object",
"properties": {
"user_ip": {
"oneOf": [
{
"type": "string",
"format": "ipv4"
},
{
"type": "string",
"format": "ipv6"
},
{
"type": "null"
}
],
"default": null
},
"is_tor": {
"type": "boolean",
"default": false
},
"is_vpn": {
"type": "boolean",
"default": false
},
"is_proxy": {
"type": "boolean",
"default": false
},
"is_bot": {
"type": "boolean",
"default": false
},
"country": {
"type": [
"string",
"null"
],
"default": null
},
"region": {
"type": [
"string",
"null"
],
"default": null
},
"city": {
"type": [
"string",
"null"
],
"default": null
},
"isp": {
"type": [
"string",
"null"
],
"default": null
},
"public_access_point": {
"type": "boolean",
"default": false
},
"connection_type": {
"type": [
"string",
"null"
],
"default": null
},
"latitude": {
"type": [
"string",
"null"
],
"default": null
},
"longitude": {
"type": [
"string",
"null"
],
"default": null
},
"timezone": {
"type": [
"string",
"null"
],
"default": null
}
},
"required": [
"user_ip",
"is_tor",
"is_vpn",
"is_proxy",
"is_bot",
"country",
"region",
"city",
"isp",
"public_access_point",
"connection_type",
"latitude",
"longitude",
"timezone"
]
},
"session_risk": {
"type": "object",
"properties": {
"global": {
"type": "object",
"properties": {
"score": {
"type": "number"
},
"telltales": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"weight": {
"type": "number"
}
},
"required": [
"name",
"weight"
]
}
}
},
"required": [
"score",
"telltales"
]
},
"custom": {
"type": "object",
"properties": {
"score": {
"type": "number"
},
"telltales": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"weight": {
"type": "number"
}
},
"required": [
"name",
"weight"
]
}
}
},
"required": [
"score",
"telltales"
]
},
"risk_category": {
"type": "string"
},
"risk_band": {
"type": "string"
}
},
"required": [
"global",
"custom",
"risk_band"
]
},
"email_intelligence": {
"type": "object",
"properties": {
"email_assessment": {
"type": "object",
"properties": {
"email_address": {
"type": "string",
"default": ""
},
"detumbled_email_address": {
"type": "string",
"default": ""
},
"deenumerated_email_address": {
"type": "string",
"default": ""
},
"suggested_action": {
"type": "string",
"default": ""
},
"email_risk_score": {
"type": "integer",
"default": 0
},
"email_domain": {
"type": "string",
"default": ""
},
"email_handle_length": {
"type": "integer",
"default": 0
},
"is_tumbled_email": {
"type": "boolean",
"default": false
},
"is_enumerated_email": {
"type": "boolean",
"default": false
},
"deenumerated_email_handle_length": {
"type": "integer",
"default": 0
},
"is_invalid_email": {
"type": "boolean",
"default": false
},
"is_role_email": {
"type": "boolean",
"default": false
},
"is_private_relay": {
"type": "boolean",
"default": false
},
"detumbled_email_first_seen": {
"type": "string",
"default": ""
},
"detumbled_email_first_seen_in_days": {
"type": "integer",
"default": 0
},
"domain_relative_usage_factor": {
"type": "integer",
"default": 0
},
"domain_enrichment": {
"type": "object",
"properties": {
"is_domain_missing": {
"type": "boolean",
"default": false
},
"domain_age": {
"type": "integer",
"default": 0
},
"domain_creation_date": {
"type": "string",
"default": ""
},
"domain_org": {
"type": "string",
"default": ""
},
"domain_name_servers": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
},
"default": null
},
"is_disposable": {
"type": "boolean",
"default": false
},
"domain_registration_country": {
"type": "string",
"default": ""
},
"error": {
"type": "string"
}
}
},
"is_suspicious_email_handle": {
"type": "boolean",
"default": false
}
}
},
"detumbled_email_stats": {
"type": "object",
"properties": {
"handle_length": {
"type": "integer",
"default": 0
},
"handle_num_alpha_chars": {
"type": "integer",
"default": 0
},
"handle_num_vowels": {
"type": "integer",
"default": 0
},
"handle_num_consonants": {
"type": "integer",
"default": 0
},
"handle_num_numeric_chars": {
"type": "integer",
"default": 0
},
"handle_num_special_chars": {
"type": "integer",
"default": 0
},
"handle_qwerty_typing_distance": {
"type": "number",
"default": 0
},
"handle_dvorak_typing_distance": {
"type": "number",
"default": 0
}
}
},
"total_email_counts": {
"type": "object",
"properties": {
"short_term_count": {
"type": "integer",
"default": 0
},
"short_term_period_minutes": {
"type": "integer",
"default": 0
},
"long_term_count": {
"type": "integer"
},
"long_term_period_minutes": {
"type": "integer"
},
"error": {
"type": "string"
}
},
"required": [
"short_term_count",
"short_term_period_minutes"
]
},
"detumbled_email_unique_counts": {
"type": "object",
"properties": {
"short_term_count": {
"type": "integer",
"default": 0
},
"short_term_period_minutes": {
"type": "integer",
"default": 0
},
"long_term_count": {
"type": "integer"
},
"long_term_period_minutes": {
"type": "integer"
},
"error": {
"type": "string"
}
},
"required": [
"short_term_count",
"short_term_period_minutes"
]
},
"deenumerated_email_unique_counts": {
"type": "object",
"properties": {
"short_term_count": {
"type": "integer",
"default": 0
},
"short_term_period_minutes": {
"type": "integer",
"default": 0
},
"long_term_count": {
"type": "integer"
},
"long_term_period_minutes": {
"type": "integer"
},
"error": {
"type": "string"
}
},
"required": [
"short_term_count",
"short_term_period_minutes"
]
},
"domain_instance_counts": {
"type": "object",
"properties": {
"short_term_count": {
"type": "integer",
"default": 0
},
"short_term_period_minutes": {
"type": "integer",
"default": 0
},
"long_term_count": {
"type": "integer"
},
"long_term_period_minutes": {
"type": "integer"
},
"error": {
"type": "string"
}
},
"required": [
"short_term_count",
"short_term_period_minutes"
]
},
"detumbled_email_instance_counts": {
"type": "object",
"properties": {
"short_term_count": {
"type": "integer",
"default": 0
},
"short_term_period_minutes": {
"type": "integer",
"default": 0
},
"long_term_count": {
"type": "integer"
},
"long_term_period_minutes": {
"type": "integer"
},
"error": {
"type": "string"
}
},
"required": [
"short_term_count",
"short_term_period_minutes"
]
},
"error": {
"type": "string"
}
}
},
"data_exchange": {
"type": "object",
"properties": {
"blob_received": {
"description": "Indicates whether the customer request included a DataExchange blob. If this feature is not enabled for your key, it will be null",
"type": [
"boolean",
"null"
],
"default": null
},
"blob_decrypted": {
"description": "Indicates if the customer provided DataExchange blob was successfully decrypted. If no blob was received, or DataExchange is not enabled for your key, it will be null",
"type": [
"boolean",
"null"
],
"default": null
}
},
"required": [
"blob_received",
"blob_decrypted"
]
},
"stateful_device_id": {
"description": "Fields corresponding to the Stateful Device ID feature",
"type": "object",
"properties": {
"stateful_device_id": {
"description": "The Stateful Device ID attributed to this user.",
"type": "string"
},
"challenge_bypassed": {
"description": "Whether the current challenge was bypassed.",
"type": "boolean"
},
"challenges_bypassed": {
"description": "Number of challenges the user has been allowed to bypass since their last solve.",
"type": "integer"
},
"change_reasons": {
"description": "Reasons why a challenge may have been presented.",
"type": [
"array",
"null"
],
"items": {
"type": "string"
},
"default": null,
"examples": [
"invalid_id",
"expired_cookie"
]
}
},
"required": [
"stateful_device_id",
"challenge_bypassed",
"challenges_bypassed"
]
},
"proof_of_work": {
"type": "object",
"properties": {
"challenged": {
"description": "Indicates that PoW was enabled for the session",
"type": "boolean",
"default": false
},
"attempted": {
"description": "Indicates that user submitted an attempt at PoW",
"type": "boolean",
"default": false
},
"passed": {
"description": "Indicates that PoW attempt was passed by the user",
"type": "boolean",
"default": false
},
"difficulty_level": {
"description": "Indicates the difficulty level of the PoW",
"type": [
"string",
"null"
],
"default": null
}
},
"required": [
"challenged",
"attempted",
"passed",
"difficulty_level"
]
}
},
"aggregations": {
"type": "object",
"properties": {
"error": {
"type": [
"string",
"null"
]
},
"ip": {
"type": "object",
"properties": {
"short_term": {
"type": "object",
"properties": {
"interval_minutes": {
"type": [
"integer",
"null"
]
},
"count": {
"type": [
"integer",
"null"
]
},
"threshold": {
"type": [
"integer",
"null"
]
}
}
},
"long_term": {
"type": "object",
"properties": {
"interval_minutes": {
"type": [
"integer",
"null"
]
},
"count": {
"type": [
"integer",
"null"
]
},
"threshold": {
"type": [
"integer",
"null"
]
}
}
}
}
}
}
},
"required": [
"session_details",
"data_exchange"
]
}
]
}
Updated 6 days ago