WAFV2 / Client / get_revenue_statistics_time_series

get_revenue_statistics_time_series

WAFV2.Client.get_revenue_statistics_time_series(**kwargs)

Retrieves time series data for monetization revenue. Returns data points aggregated at the specified interval for the given time window. This operation is only available for CLOUDFRONT scope. The maximum supported time window is 90 days. When no CurrencyMode filter is provided, results default to REAL. To retrieve test data, include a CurrencyMode filter with the value TEST.

See also: AWS API Documentation

Request Syntax

response = client.get_revenue_statistics_time_series(
    StatisticType='DATE_HISTOGRAM'|'PAYMENT_TRAFFIC',
    TimeWindow={
        'StartTime': datetime(2015, 1, 1),
        'EndTime': datetime(2015, 1, 1)
    },
    Scope='CLOUDFRONT'|'REGIONAL',
    Interval='MINUTELY'|'FIVE_MINUTELY'|'HOURLY'|'DAILY',
    Currency='USDC',
    GroupBy='NAME'|'CATEGORY'|'INTENT'|'ORGANIZATION'|'WEBACL',
    Filters=[
        {
            'Name': 'string',
            'Values': [
                'string',
            ]
        },
    ],
    Limit=123,
    NextMarker='string'
)
Parameters:
  • StatisticType (string) –

    [REQUIRED]

    The type of time series data to retrieve: DATE_HISTOGRAM for revenue over time, or PAYMENT_TRAFFIC for payment traffic patterns.

  • TimeWindow (dict) –

    [REQUIRED]

    The time range for the query. Specify start and end timestamps.

    • StartTime (datetime) – [REQUIRED]

      The beginning of the time range from which you want GetSampledRequests to return a sample of the requests that your Amazon Web Services resource received. You must specify the times in Coordinated Universal Time (UTC) format. UTC format includes the special designator, Z. For example, "2016-09-27T14:50Z". You can specify any time range in the previous three hours.

    • EndTime (datetime) – [REQUIRED]

      The end of the time range from which you want GetSampledRequests to return a sample of the requests that your Amazon Web Services resource received. You must specify the times in Coordinated Universal Time (UTC) format. UTC format includes the special designator, Z. For example, "2016-09-27T14:50Z". You can specify any time range in the previous three hours.

  • Scope (string) –

    [REQUIRED]

    Specifies whether this is for a Amazon CloudFront distribution ( CLOUDFRONT) or for a regional application ( REGIONAL).

  • Interval (string) –

    [REQUIRED]

    The time interval for aggregating data points: MINUTELY, FIVE_MINUTELY, HOURLY, or DAILY.

  • Currency (string) –

    [REQUIRED]

    The currency for the amounts in the response.

  • GroupBy (string) – The dimension to group results by.

  • Filters (list) –

    Optional filters to narrow the results.

    • (dict) –

      A filter for narrowing monetization statistics and settlement record results. Specify a filter name and one or more values to match.

      Filter behavior:

      • Multiple values within one filter: OR (match any)

      • Multiple filters: AND (all must match)

      • No duplicate filter names allowed (rejected with error)

      • Duplicate values within a filter are silently deduplicated

      • If no CurrencyMode filter is specified, defaults to REAL

      • Name (string) – [REQUIRED]

        The filter name. Format: Key is a string, Value is a list of strings.

        Enum-restricted (invalid values rejected):

        • CurrencyMode: REAL, TEST

        • ChainName: BASE, SOLANA, BASE_SEPOLIA, SOLANA_DEVNET

        • SettlementStatus: SETTLED, PENDING, FAILED, SERVICE_ERROR, SKIPPED_ORIGIN_ERROR, DUPLICATE

        • HttpSourceName: CF, ALB, APIGW, APPRUNNER, COGNITO, VERIFIED_ACCESS

        ARN-validated:

        • WebACLArn: valid WAFv2 web ACL ARN

        Free-text (any string up to 256 chars):

        • SourceName: The name of the bot. Populated from Bot Control verified bot labels.

        • SourceCategory: The category classification of the bot. From Bot Control categorization.

        • Intent: The declared intent of the bot request.

        • Organization: The organization operating the bot.

        • UriPathPrefix: The URI path of the request that was monetized.

        • RequestId: The WAF request ID associated with the transaction. Matches the requestId in WAF logs. Pattern: ^[a-zA-Z0-9:._\-=+/]+$

        • TransactionId: The blockchain transaction identifier. Pattern: ^[a-zA-Z0-9:._\-=+/]+$

        • TerminatingRuleName: The name of the WAF rule that triggered the Monetize action.

        • PayerAddress: The blockchain wallet address of the paying client. Pattern: ^[a-zA-Z0-9:._\-=+/]+$

        • HttpSourceId: The identifier of the Amazon Web Services resource associated with the web ACL (for example, CloudFront distribution ID).

      • Values (list) – [REQUIRED]

        The values to filter on. Specify as a list of strings. Results match any of the specified values (OR logic). Duplicate values are silently deduplicated. Maximum: 20 values per filter.

        • (string) –

  • Limit (integer) – The maximum number of data points to return. Minimum: 1. Maximum: 10000.

  • NextMarker (string) – When you get a paginated response, this marker indicates that additional results are available.

Return type:

dict

Returns:

Response Syntax

{
    'DataPoints': [
        {
            'Date': datetime(2015, 1, 1),
            'MonetizeServedCount': 123,
            'SettledCount': 123,
            'TotalAmount': 'string',
            'Category': 'string',
            'Intent': 'string',
            'GroupByValue': 'string'
        },
    ],
    'NextMarker': 'string'
}

Response Structure

  • (dict) –

    • DataPoints (list) –

      The list of time series data points.

      • (dict) –

        A single data point in a revenue time series, representing aggregated monetization metrics for a specific time interval.

        • Date (datetime) –

          The timestamp for this data point.

        • MonetizeServedCount (integer) –

          The number of HTTP 402 Payment Required responses served during this interval.

        • SettledCount (integer) –

          The number of successfully settled payments during this interval.

        • TotalAmount (string) –

          The total revenue amount during this interval in the specified currency.

        • Category (string) –

          The bot category for this data point, when grouped by category.

        • Intent (string) –

          The intent classification for this data point, when grouped by intent.

        • GroupByValue (string) –

          The group-by dimension value for this data point.

    • NextMarker (string) –

      When you get a paginated response, this marker indicates that additional results are available.

Exceptions