@adcp/sdk API Reference - v10.0.1
    Preparing search index...

    Interface GetMediaBuyDeliveryRequest

    Request parameters for retrieving comprehensive delivery metrics

    interface GetMediaBuyDeliveryRequest {
        adcp_version?: string;
        adcp_major_version?: number;
        account?: AccountReference;
        media_buy_ids?: string[];
        status_filter?: MediaBuyStatus | MediaBuyStatus[];
        start_date?: string;
        end_date?: string;
        include_package_daily_breakdown?: boolean;
        time_granularity?: ReportingFrequency;
        include_window_breakdown?: boolean;
        attribution_window?: {
            post_click?: Duration;
            post_view?: Duration;
            model?: AttributionModel;
        };
        reporting_dimensions?: {
            geo?: {
                geo_level: GeographicTargetingLevel;
                system?: | "custom"
                | "nielsen_dma"
                | "uk_itl1"
                | "uk_itl2"
                | "eurostat_nuts2"
                | "postal_code"
                | "zip"
                | "zip_plus_four"
                | "outward"
                | "full"
                | "fsa"
                | "plz"
                | "code_postal"
                | "postcode"
                | "cep"
                | "pin"
                | "us_zip"
                | "us_zip_plus_four"
                | "gb_outward"
                | "gb_full"
                | "ca_fsa"
                | "ca_full"
                | "de_plz"
                | "fr_code_postal"
                | "au_postcode"
                | "ch_plz"
                | "at_plz";
                country?: string;
                limit?: number;
                sort_by?: SortMetric;
            };
            device_type?: { limit?: number; sort_by?: SortMetric };
            device_platform?: { limit?: number; sort_by?: SortMetric };
            audience?: { limit?: number; sort_by?: SortMetric };
            placement?: { limit?: number; sort_by?: SortMetric };
        };
        context?: ContextObject;
        ext?: ExtensionObject;
    }
    Index

    Properties

    adcp_version?: string

    Release-precision AdCP version (VERSION.RELEASE, e.g. "3.0", "3.1", "3.1-beta"). On a request: the buyer's release pin — the seller validates against its supported_versions and returns VERSION_UNSUPPORTED on cross-major mismatch, or downshifts to the highest supported release within the same major. On a response: the release the seller actually served — clients SHOULD validate the response against that release's schema, not against their pin. Patches are not negotiated; surface them as build_version on capabilities for operational visibility. When omitted, falls back to adcp_major_version (deprecated) or server default. Buyers SHOULD emit both adcp_version and adcp_major_version through 3.x to remain compatible with sellers that only read the legacy field. NORMALIZATION: SDKs that read full-semver values from bundle metadata (e.g. ComplianceIndex.published_version = "3.1.0-beta.1") MUST normalize to release-precision ("3.1-beta.1") before emitting on the wire — meta-field values are NOT valid wire values.

    adcp_major_version?: number

    DEPRECATED in favor of adcp_version (release-precision string). Servers MUST continue to honor this field through 3.x. Removed in 4.0. Original semantics: the AdCP major version the buyer's payloads conform to. Sellers validate against their supported major_versions and return VERSION_UNSUPPORTED if unsupported. When omitted, the seller assumes its highest supported version.

    media_buy_ids?: string[]

    Array of media buy IDs to get delivery data for

    status_filter?: MediaBuyStatus | MediaBuyStatus[]

    Filter by status. Can be a single status or array of statuses

    start_date?: string

    Start date for reporting period (YYYY-MM-DD). When omitted along with end_date, returns campaign lifetime data. Only accepted when the product's reporting_capabilities.date_range_support is 'date_range'.

    ^\d{4}-\d{2}-\d{2}$

    end_date?: string

    End date for reporting period (YYYY-MM-DD). When omitted along with start_date, returns campaign lifetime data. Only accepted when the product's reporting_capabilities.date_range_support is 'date_range'.

    ^\d{4}-\d{2}-\d{2}$

    include_package_daily_breakdown?: boolean

    When true, include daily_breakdown arrays within each package in by_package. Useful for per-package pacing analysis and line-item monitoring. Omit or set false to reduce response size — package daily data can be large for multi-package buys over long flights.

    time_granularity?: ReportingFrequency
    include_window_breakdown?: boolean

    When true, the response includes media_buy_deliveries[].windows[] — an array of per-window delivery slices over the date range at the requested time_granularity. Ignored when time_granularity is omitted. Each window's payload mirrors what reporting_webhook would have delivered for the same window, enabling lossless GET-path recovery for buyers who missed webhook fires. Omit or set false to reduce response size when only cumulative aggregates are needed.

    attribution_window?: {
        post_click?: Duration;
        post_view?: Duration;
        model?: AttributionModel;
    }

    Attribution window to apply for conversion metrics. When provided, the seller returns conversion data using the requested lookback windows instead of their platform default. The seller echoes the applied window in the response. Sellers that do not support configurable windows ignore this field and return their default. Check get_adcp_capabilities conversion_tracking.attribution_windows for available options.

    Type Declaration

    • Optionalpost_click?: Duration

      Post-click attribution window to apply.

    • Optionalpost_view?: Duration

      Post-view attribution window to apply.

    • Optionalmodel?: AttributionModel
    reporting_dimensions?: {
        geo?: {
            geo_level: GeographicTargetingLevel;
            system?:
                | "custom"
                | "nielsen_dma"
                | "uk_itl1"
                | "uk_itl2"
                | "eurostat_nuts2"
                | "postal_code"
                | "zip"
                | "zip_plus_four"
                | "outward"
                | "full"
                | "fsa"
                | "plz"
                | "code_postal"
                | "postcode"
                | "cep"
                | "pin"
                | "us_zip"
                | "us_zip_plus_four"
                | "gb_outward"
                | "gb_full"
                | "ca_fsa"
                | "ca_full"
                | "de_plz"
                | "fr_code_postal"
                | "au_postcode"
                | "ch_plz"
                | "at_plz";
            country?: string;
            limit?: number;
            sort_by?: SortMetric;
        };
        device_type?: { limit?: number; sort_by?: SortMetric };
        device_platform?: { limit?: number; sort_by?: SortMetric };
        audience?: { limit?: number; sort_by?: SortMetric };
        placement?: { limit?: number; sort_by?: SortMetric };
    }

    Request dimensional breakdowns in delivery reporting. Each key enables a specific breakdown dimension within by_package — include as an empty object (e.g., "device_type": {}) to activate with defaults. Omit entirely for no breakdowns (backward compatible). Unsupported dimensions are silently omitted from the response. Note: keyword, catalog_item, and creative breakdowns are returned automatically when the seller supports them and are not controlled by this object.

    Type Declaration

    • Optionalgeo?: {
          geo_level: GeographicTargetingLevel;
          system?:
              | "custom"
              | "nielsen_dma"
              | "uk_itl1"
              | "uk_itl2"
              | "eurostat_nuts2"
              | "postal_code"
              | "zip"
              | "zip_plus_four"
              | "outward"
              | "full"
              | "fsa"
              | "plz"
              | "code_postal"
              | "postcode"
              | "cep"
              | "pin"
              | "us_zip"
              | "us_zip_plus_four"
              | "gb_outward"
              | "gb_full"
              | "ca_fsa"
              | "ca_full"
              | "de_plz"
              | "fr_code_postal"
              | "au_postcode"
              | "ch_plz"
              | "at_plz";
          country?: string;
          limit?: number;
          sort_by?: SortMetric;
      }

      Request geographic breakdown. Check reporting_capabilities.supports_geo_breakdown for available levels and systems.

      • geo_level: GeographicTargetingLevel
      • Optionalsystem?:
            | "custom"
            | "nielsen_dma"
            | "uk_itl1"
            | "uk_itl2"
            | "eurostat_nuts2"
            | "postal_code"
            | "zip"
            | "zip_plus_four"
            | "outward"
            | "full"
            | "fsa"
            | "plz"
            | "code_postal"
            | "postcode"
            | "cep"
            | "pin"
            | "us_zip"
            | "us_zip_plus_four"
            | "gb_outward"
            | "gb_full"
            | "ca_fsa"
            | "ca_full"
            | "de_plz"
            | "fr_code_postal"
            | "au_postcode"
            | "ch_plz"
            | "at_plz"

        Optional classification system for metro or postal_area levels. Metro uses metro-system values (e.g., 'nielsen_dma'); native postal_area uses country-local postal-system values with country (e.g., country 'US', system 'zip'); deprecated legacy postal_area requests may use legacy-postal-system values such as 'us_zip'. Omit to request the level without selecting a specific system.

      • Optionalcountry?: string

        ISO 3166-1 alpha-2 country code. Required for native postal_area requests; omitted for legacy postal_area and non-postal geo requests.

        ^[A-Z]{2}$

      • Optionallimit?: number

        Maximum number of geo entries to return. Defaults to 25. When truncated, by_geo_truncated is true in the response.

        1

      • Optionalsort_by?: SortMetric
    • Optionaldevice_type?: { limit?: number; sort_by?: SortMetric }

      Request device type breakdown.

      • Optionallimit?: number

        Maximum number of entries to return. When omitted, all entries are returned (the enum is small and bounded).

        1

      • Optionalsort_by?: SortMetric
    • Optionaldevice_platform?: { limit?: number; sort_by?: SortMetric }

      Request device platform breakdown.

      • Optionallimit?: number

        Maximum number of entries to return. When omitted, all entries are returned (the enum is small and bounded).

        1

      • Optionalsort_by?: SortMetric
    • Optionalaudience?: { limit?: number; sort_by?: SortMetric }

      Request audience segment breakdown.

      • Optionallimit?: number

        Maximum number of entries to return. Defaults to 25.

        1

      • Optionalsort_by?: SortMetric
    • Optionalplacement?: { limit?: number; sort_by?: SortMetric }

      Request placement breakdown.

      • Optionallimit?: number

        Maximum number of entries to return. Defaults to 25.

        1

      • Optionalsort_by?: SortMetric
    context?: ContextObject
    ext?: ExtensionObject