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

    Interface SyncEventSourcesRequest

    Request parameters for configuring event sources on an account with upsert semantics. Existing event sources matched by event_source_id are updated, new ones are created. When delete_missing is true, buyer-managed event sources on the account not in this request are removed. When event_sources is omitted, the call is discovery-only: it returns all event sources on the account without modification. The response always includes both synced and seller-managed event sources for full visibility.

    interface SyncEventSourcesRequest {
        adcp_version?: string;
        adcp_major_version?: number;
        idempotency_key: string;
        account: AccountReference;
        event_sources?: {
            event_source_id: string;
            name?: string;
            event_types?: EventType[];
            action_source?: ActionSource;
            allowed_domains?: string[];
            surface?: EventSurface;
        }[];
        delete_missing?: boolean;
        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.

    idempotency_key: string

    Client-generated unique key for at-most-once execution. event_source_id gives resource-level dedup per source, but the sync envelope emits audit events and can trigger downstream pixel provisioning — this key prevents those side effects from firing twice on retry. Also serves as a request ID on discovery-only calls (when event_sources is omitted). MUST be unique per (seller, request) pair. Use a fresh UUID v4 for each request.

    16

    255

    ^[A-Za-z0-9_.:-]{16,255}$

    event_sources?: {
        event_source_id: string;
        name?: string;
        event_types?: EventType[];
        action_source?: ActionSource;
        allowed_domains?: string[];
        surface?: EventSurface;
    }[]

    Event sources to sync (create or update). When omitted, the call is discovery-only and returns all existing event sources on the account without modification.

    Type Declaration

    • event_source_id: string

      Unique identifier for this event source

    • Optionalname?: string

      Human-readable name for this event source

    • Optionalevent_types?: EventType[]

      Event types this source handles (e.g. purchase, lead). If omitted, accepts all event types.

    • Optionalaction_source?: ActionSource
    • Optionalallowed_domains?: string[]

      Domains authorized to send events for this event source

    • Optionalsurface?: EventSurface
    delete_missing?: boolean

    When true, event sources not included in this sync will be removed

    context?: ContextObject
    ext?: ExtensionObject