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"],
              "pattern": "^[0-9A-Fa-f]+\\.[0-9]{10}$",
              "default": ""
            },
            "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": 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", 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",
                          "null"
                        ],
                        "default": null
                      },
                      "weight": {
                        "type": [
                          "number",
                          "null"
                        ],
                        "default": null
                      }
                    },
                    "required": [
                      "name", "weight"
                    ]
                  }
                }
              },
              "required": [
                "score", "telltales"
              ]
            },
            "custom": {
              "type": "object",
              "properties": {
                "score": {
                  "type": "number"
                },
                "telltales": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "name": {
                        "type": [
                          "string",
                          "null"
                        ],
                        "default": null
                      },
                      "weight": {
                        "type": [
                          "number",
                          "null"
                        ],
                        "default": null
                      }
                    },
                    "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": ""
                      }
                    }
                  },
                  "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": "decimal",
                    "default": 0
                  },
                  "handle_dvorak_typing_distance": {
                    "type": "decimal",
                    "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",
                    "default": 0
                  },
                  "long_term_period_minutes": {
                    "type": "integer",
                    "default": 0
                  }
                }
              },
              "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",
                    "default": 0
                  },
                  "long_term_period_minutes": {
                    "type": "integer",
                    "default": 0
                  }
                }
              },
              "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",
                    "default": 0
                  },
                  "long_term_period_minutes": {
                    "type": "integer",
                    "default": 0
                  }
                }
              },
              "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",
                    "default": 0
                  },
                  "long_term_period_minutes": {
                    "type": "integer",
                    "default": 0
                  }
                }
              }
            },
            "required": [
              "email_assessment",
              "detumbled_email_stats",
              "total_email_counts",
              "detumbled_email_unique_counts",
              "deenumerated_email_unique_counts",
              "domain_instance_counts"
            ]
          }
        },
        "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"
          ]
        }
      },
      "aggregations": {
        "type": "object",
        "properties": {
          "error": {
            "type": ["string", "null"]
          },
          "ip": {
            "type": "object",
            "properties": {
              "short_term": {
                "type": "object",
                "properties": {
                  "interval_minutes": {
                    "type": ["integer"],
                    "default": 0
                  },
                  "count": {
                    "type": ["integer"],
                    "default": 0
                  },
                  "threshold": {
                    "type": ["integer"],
                    "default": 0
                  }
                }
              },
              "long_term": {
                "type": "object",
                "properties": {
                  "interval_minutes": {
                    "type": ["integer"],
                    "default": 0
                  },
                  "count": {
                    "type": ["integer"],
                    "default": 0
                  },
                  "threshold": {
                    "type": ["integer"],
                    "default": 0
                  }
                }
              }
            }
          }
        }
      },
      "required": [
        "session_details",
        "data_exchange"
      ]
    }
  ]
}