action threatjammer_query_origin_traffic_client_v1_origin_client_analysis_get { label: "Get the type of clients of the trafffic of the origin." description: "### What\nObtain the type of clients of trhe traffic in the specified time range and interval. Thequery will return the number of requests and the different type of CLIENTs and CRAWLERs.\n\nThe origin is a combination of protocol and domain (Ex: https://example.com) and the origin token is a special key used in conjunction with javascript library used for abuse detection. This key is owned by the user and is used to identify the origin of the request.\n Hence, the protocol and domain of the origin must be the one where the javascript is loaded.\n\n### Parameters\nIn the querystring of the request, add the origin of the user to the `query` parameter with the following format:1. Protocol: Can be ``http`` or ``https``.\n2. Domain: The domain of the origin.\n\nThen, the origin must be urlencoded. Example:\n```\nhttps://example.com\n```\n\n```\nhttps%3A%2F%2Fexample.com\n```\n\nThe querystring must be like this:\n```\n?query=https%3A%2F%2Fexample.com\n```\n\nTo restrict the query to a specific time range, add the following parameters to the querystring:\n- ``from_timestamp``: the start date and time of the analysis in UNIX timestamp in milliseconds.\n- ``to_timestamp``: (Optional) the end date and time of the analysis in UNIX timestamp in milliseconds.\n- ``interval``: (Optional) the interval of the analysis in minutes. The default value is 60 minutes (HOURLY). Possible values are: ``HOURLY``.\n\n### Result\nThe result is a JSON object with the following fields:\n- ``self``: the URI to the request to obtain the traffic client analysis for the origin.\n- ``from_timestamp``: the start date and time of the analysis in UNIX timestamp in milliseconds.\n- ``to_timestamp``: the end date and time of the analysis in UNIX timestamp in milliseconds.\n- ``interval``: the interval of the analysis. Possible values are: ``HOURLY``.\n- ``data``: a JSON list with the following elements each one with the following fields:\n - ``timestamp``: the date and time of the analysis in UNIX timestamp in milliseconds.\n - ``total``: the total number of requests.\n - ``client_*``: the number of requests from a specific client. The possible clients are: ``browser``, ``crawler``, ``email``, ``library``, ``mobile_browser``, ``multimedia_player``, ``offline_browser``, ``unrecognized``, ``ua_anonymizer``, ``validator``, ``wap_browser``.\n - ``crawler_*``: the number of requests from a specific crawler. The possible crawlers are:``feed_fetcher``, ``link_checker``, ``marketing``, ``screenshot_creator``, ``search_engine_bot``,``site_monitor``, ``speed_tester``, ``tool``, ``uncategorized``, ``unrecognized``, ``virus_scanner``,``vulnerability_scanner``, ``web_scraper``.\n\n### Errors\n- a `404 Not Found` error if the origin token is not found.\n- a `400 Bad Request` error if the origin does not have the correct format.\n\nIt will return the API Global errors described in the API description." provider: threatjammer method: GET path: "/v1/origin/client/analysis" encoding: json input: { type: "object" properties: { from_timestamp: { type: "integer" description: "A UNIX timestamp in milliseconds to restrict the results of the query to entries logged after or equal to this value." } interval: { type: "string" description: "The data inteval to aggregate the result dataset" enum: ["HOURLY"] } query: { type: "string" description: "The origin site to query" } to_timestamp: { type: "integer" description: "A UNIX timestamp in milliseconds to restrict the results of the query to entries logged before this value." } } required: ["from_timestamp", "interval", "query"] additionalProperties: false } output: { type: "object" required: ["data", "from_timestamp", "interval", "self", "to_timestamp"] properties: { data: { type: "array" items: { type: "object" required: ["timestamp", "total", "client_total", "crawler_total", "client_browser", "client_crawler", "client_email", "client_library", "client_mobile_browser", "client_multimedia_player", "client_offline_browser", "client_unrecognized", "client_ua_anonymizer", "client_validator", "client_wap_browser", "crawler_feed_fetcher", "crawler_link_checker", "crawler_marketing", "crawler_screenshot_creator", "crawler_search_engine_bot", "crawler_site_monitor", "crawler_speed_tester", "crawler_tool", "crawler_uncategorised", "crawler_unrecognized", "crawler_virus_scanner", "crawler_vulnerability_scanner", "crawler_web_scraper"] properties: { client_browser: { type: "integer" } client_crawler: { type: "integer" } client_email: { type: "integer" } client_library: { type: "integer" } client_mobile_browser: { type: "integer" } client_multimedia_player: { type: "integer" } client_offline_browser: { type: "integer" } client_total: { type: "integer" } client_ua_anonymizer: { type: "integer" } client_unrecognized: { type: "integer" } client_validator: { type: "integer" } client_wap_browser: { type: "integer" } crawler_feed_fetcher: { type: "integer" } crawler_link_checker: { type: "integer" } crawler_marketing: { type: "integer" } crawler_screenshot_creator: { type: "integer" } crawler_search_engine_bot: { type: "integer" } crawler_site_monitor: { type: "integer" } crawler_speed_tester: { type: "integer" } crawler_tool: { type: "integer" } crawler_total: { type: "integer" } crawler_uncategorised: { type: "integer" } crawler_unrecognized: { type: "integer" } crawler_virus_scanner: { type: "integer" } crawler_vulnerability_scanner: { type: "integer" } crawler_web_scraper: { type: "integer" } timestamp: { type: "integer" } total: { type: "integer" } } } } from_timestamp: { type: "integer" } interval: { type: "string" } self: { type: "string" } to_timestamp: { type: "integer" } } } }