@adcp/sdk API Reference - v14.0.0-beta.6
    Preparing search index...

    Interface CampaignGovernanceConfig

    Campaign governance agent configuration. The campaign governance agent handles check_governance, sync_plans, report_plan_outcome, and get_plan_audit_logs.

    interface CampaignGovernanceConfig {
        agent: AgentConfig;
        planId: string;
        callerUrl?: string;
        maxConditionsIterations?: number;
        governanceContext?: string;
        resolveIntentDetails?: (
            tool: string,
            payload: Readonly<Record<string, unknown>>,
        ) => GovernanceIntentDetails | Promise<GovernanceIntentDetails>;
        resolveApplicability?: (
            tool: string,
            payload: Readonly<Record<string, unknown>>,
        ) => boolean | Promise<boolean>;
    }
    Index

    Properties

    The governance agent to call

    planId: string

    Plan ID for this advertiser's campaign

    callerUrl?: string

    Caller URL for the check_governance request

    maxConditionsIterations?: number

    Max re-check iterations after auto-applying conditions. Default: 0 (return conditions to caller without re-checking). The initial governance check always fires.

    governanceContext?: string

    Intent checks never reuse authorization; retained only as an outcome-report fallback.

    resolveIntentDetails?: (
        tool: string,
        payload: Readonly<Record<string, unknown>>,
    ) => GovernanceIntentDetails | Promise<GovernanceIntentDetails>

    Resolve intent-only fields that cannot be inferred safely from downstream task arguments (for example an update's positive commitment delta).

    resolveApplicability?: (
        tool: string,
        payload: Readonly<Record<string, unknown>>,
    ) => boolean | Promise<boolean>

    Resolve conditional x-governed-commitment requests that require authoritative current state (for example, whether a budget change is decrease-only). Return true for a trigger and false for an exemption. Obvious stateless exemptions such as pause, cancel, deactivate, and creative estimates are handled by the SDK before this callback runs.