Skip to main content
GET
/
waap
/
v1
/
analytics
/
traffic-filtered
Python
import os
from gcore import Gcore

client = Gcore(
    api_key=os.environ.get("GCORE_API_KEY"),  # This is the default and can be omitted
)
waap_compact_traffic_metrics = client.waap.analytics.get_traffic_filtered(
    resolution="daily",
    start="2024-04-13T00:00:00+01:00",
)
print(waap_compact_traffic_metrics)
[
  {
    "timestamp": 123,
    "passed": 0,
    "blocked": 0,
    "monitored": 0,
    "allowed": 0
  }
]

Documentation Index

Fetch the complete documentation index at: https://gcore.com/docs/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

API key for authentication. Make sure to include the word apikey, followed by a single space and then your token. Example: apikey 1234$abcdef

Query Parameters

domains
integer[]

List of domain IDs. Empty list means all domains belonging to the current account.

Domain ID

Example:
[1, 2, 3]
resolution
enum<string>
required

Specifies the granularity of the result data.

Available options:
daily,
hourly,
minutely
bucket_size
enum<integer> | null

Optional explicit aggregation bucket width in seconds. When supplied, bucket_size supersedes resolution for aggregation granularity.

Available options:
60,
300,
600,
900,
1800,
3600,
7200,
10800,
21600,
43200,
86400
start
string
required

Filter data items starting from a specified date in ISO 8601 format

Example:

"2024-04-13T00:00:00+01:00"

end
string | null

Filter data items up to a specified end date in ISO 8601 format. If not provided, defaults to the current date and time.

Example:

"2024-04-14T12:00:00Z"

ips
string<ipvanyaddress>[]

Filter traffic data by client IP.

Example:
["1.2.3.4", " 2001:678:194::3c25:ddad"]
path
string | null

Filter by URL path with a glob-like pattern.

Example:

"/home"

countries
string[]

Filter data by a country code of the originating IP address in ISO 3166-1 alpha-2 format.

Pattern: ^\w{2}$
Example:
["DE", "MY"]
status_codes
integer[]

Filter data by HTTP response status code.

Required range: 100 <= x <= 599
Example:
["403", "499"]
http_methods
enum<string>[]

Filter by HTTP methods

An HTTP method of a request.

Available options:
DELETE,
GET,
HEAD,
OPTIONS,
PATCH,
POST,
PUT,
TRACE
Example:
["GET", "HEAD"]
reference_ids
string[]

Filter data by reference IDs.

Pattern: ^[a-f0-9]{32}$
request_ids
string[]

Filter data by request IDs.

Pattern: ^[a-f0-9]{32}-[0-9]{6}$
session_ids
string[]

Filter data by session IDs.

Pattern: ^[a-f0-9]{32}$
security_rule_names
string[]

Filter data by name of a security rule matched the request.

Maximum string length: 100
Pattern: ^[a-zA-Z0-9_ ~!@#$%^&*()+\[\]{}|.,;:<>?/-]*$
Example:
["SQL injection"]
decision
enum<string>[]

Filter data by decision.

Filter data by the event decision.

Available options:
blocked,
monitored,
allowed,
passed
Example:
["allowed", "blocked"]
optional_action
enum<string>[]

Filter data by optional action.

Filter data by the optional action.

Available options:
captcha,
challenge
Example:
["captcha", "challenge"]
exclude_ips
string<ipvanyaddress>[]

Exclude traffic data by client IP.

Example:
["1.2.3.4", "2001:678:194::3c25:ddad"]
exclude_countries
string[]

Exclude data by a country code of the originating IP address in ISO 3166-1 alpha-2 format.

Pattern: ^\w{2}$
Example:
["DE", "MY"]
exclude_session_ids
string[]

Exclude data by session IDs.

Pattern: ^[a-f0-9]{32}$
exclude_reference_ids
string[]

Exclude data by reference IDs.

Pattern: ^[a-f0-9]{32}$
exclude_security_rule_names
string[]

Exclude data by name of a security rule matched the request.

Maximum string length: 100
Pattern: ^[a-zA-Z0-9_ ~!@#$%^&*()+\[\]{}|.,;:<>?/-]*$
Example:
["SQL injection"]
exclude_domains
integer[]

Exclude data by domain ID.

ja3
string | null

Filter by JA3 TLS client fingerprint. When present, the value must be exactly 32 hexadecimal characters (mixed case allowed) and is case-folded to lowercase when the backend filter is built. Omit the parameter entirely to apply no JA3 filter.

Pattern: ^[0-9a-fA-F]{32}$
Example:

"e7d705a3286e19ea42f587b344ee6865"

user_agent
string | null

Include entries whose user agent contains the supplied text, case-insensitive partial match. Omit the parameter to apply no user agent text filter.

Maximum string length: 300
Example:

"Mozilla/5.0"

user_agent_clients
string[]

Include entries whose parsed user agent client exactly equals any supplied value. Omit or provide an empty list to apply no user agent client filter.

Maximum array length: 10
Maximum string length: 50
Example:
["Chrome", "Firefox"]
user_agent_devices
string[]

Include entries whose parsed user agent device exactly equals any supplied value. Omit or provide an empty list to apply no user agent device filter.

Maximum array length: 10
Maximum string length: 50
Example:
["mac", "Nokia", "PlayStation"]
tags
string[]

Include entries whose tag exactly equals any supplied value. Omit or provide an empty list to apply no tag filter.

Maximum array length: 5
Maximum string length: 50
Example:
["evasiveclient", "injectionattack"]
organizations
string[]

Include entries whose organization exactly equals any supplied value. Omit or provide an empty list to apply no organization filter.

Maximum array length: 10
Maximum string length: 100
Example:
["Example Org", "Acme Corp"]
exclude_user_agent
string | null

Exclude entries whose user agent contains the supplied text, case-insensitive partial match. Omit the parameter to apply no user agent text exclusion.

Maximum string length: 300
Example:

"python-requests"

exclude_user_agent_clients
string[]

Exclude entries whose parsed user agent client exactly equals any supplied value. Omit or provide an empty list to apply no user agent client exclusion.

Maximum array length: 10
Maximum string length: 50
Example:
["OpenAI GPTBot", "Uptimerobot"]
exclude_user_agent_devices
string[]

Exclude entries whose parsed user agent device exactly equals any supplied value. Omit or provide an empty list to apply no user agent device exclusion.

Maximum array length: 10
Maximum string length: 50
Example:
["SMART TV"]
exclude_ja3
string | null

Exclude entries whose JA3 TLS client fingerprint equals the supplied value. Must be exactly 32 hexadecimal characters (mixed case allowed) and is case-folded to lowercase when the backend filter is built. Omit the parameter to apply no JA3 exclusion.

Pattern: ^[0-9a-fA-F]{32}$
Example:

"e7d705a3286e19ea42f587b344ee6865"

exclude_tags
string[]

Exclude entries whose tag exactly equals any supplied value. Omit or provide an empty list to apply no tag exclusion.

Maximum array length: 5
Maximum string length: 50
Example:
["mousedevice"]
exclude_organizations
string[]

Exclude entries whose organization exactly equals any supplied value. Omit or provide an empty list to apply no organization exclusion.

Maximum array length: 10
Maximum string length: 100
Example:
["Acme corp"]

Response

Successful Response

timestamp
integer
required

UNIX timestamp indicating when the traffic data was recorded

passed
integer
default:0

Traffic (number of requests) that was passed to the origin and didn't trigger any rules

blocked
integer
default:0

Traffic blocked by a security policy, custom rule, or DDoS protection

monitored
integer
default:0

Traffic that was identified as malicious by security policies (for monitored domains)

allowed
integer
default:0

Traffic passed due to a permissive security rule