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
                        },
                        "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
                        },
                        "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
                        },
                        "device_id": {
                            "description": "Uniquely identifies device classes instead of specific devices. A Device ID can identify changes to devices by a user if those two devices are distinguishable based on collected fingerprints. It is not comprised of uniquely identifiable attributes and so can't be used for situations when a user switched from one device to another of the same type while keeping all the settings the same.",
                            "type": ["string", "null"],
                            "default": null
                        },
                        "challenge_type": {
                            "description": "The type of challenge that the end-user solved",
                            "type": ["string", "null"],
                            "enum": ["audio", "transparent", "visual", 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",
                        "telltale_list",
                        "device_id"
                    ]
                },
                "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
                                }
                            },
                            "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
                                }
                            },
                            "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
                                    ]
                                }
                            },
                            "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"
                    ]
                }
            },
            "required": [
                "session_details",
                "fingerprint",
                "ip_intelligence"
            ]
        }
    ]
}