Nexad · Agentic Access

Nexad Agentic Access

x-agentic-access derived

Nexad exposes 281 API operations that an AI agent could call, of which 132 are state-changing ‘acting’ operations. This is a recommended x-agentic-access execution contract — the scope, audience, consequence tier, short-lived token constraints, and escalation each action should carry before it is handed to an autonomous agent.

By consequence: 149 read, 8 write, 66 physical, and 58 safety-critical.

124 operations are classed safety-critical and should require human-in-the-loop approval at runtime.

Contracts are classified heuristically from the provider’s OpenAPI and refresh on every APIs.io network build; audience is bound per deployment. The model follows Curity’s Access Intelligence (apidays Munich 2026). Browse every provider’s agent contracts at agentic-access.apis.io.

CompanyArtificial IntelligenceAdvertisingMarketingMarketing AutomationContextual AdvertisingMobile SDKAgent
Operations: 281 Acting: 132 Human-in-the-loop: 124 Method: derived

By consequence

read 149 write 8 physical 66 safety-critical 58

Source

Agentic Access

nexad-agentic-access.yml Raw ↑
generated: '2026-08-13'
method: derived
source: cli/nexad-capabilities.json
source_url: https://raw.githubusercontent.com/About-Intelligence/soku-cli/main/src/generated/capabilities.json
spec: x-agentic-access (Curity Access Intelligence vocabulary)
audience: null
notes: 'Unusually for this artifact, the execution contract is NOT inferred from HTTP verbs. Nexad/Soku
  publishes its OWN per-action governance classification inside the CLI capability registry it ships in
  its public MIT-licensed repository (About-Intelligence/soku-cli): every action carries a provider-set
  `mode` (read | write | risk) and a provider-set `requires_review` boolean, and the platform enforces
  the gate at runtime — a review-gated write creates a pending review and does not execute until a human
  approves it. This file maps those PROVIDER-PUBLISHED fields onto the x-agentic-access vocabulary: mode=read
  -> connected/read; mode=write without review -> acting/write; mode=write WITH review -> acting/physical
  (these are the delivery- and spend-changing ad mutations); mode=risk -> acting/safety-critical. provider_mode
  and provider_requires_review are retained verbatim on every row so the provider''s own claim survives
  independently of our mapping. Token TTL ceilings, audit flags and proof-of-possession are the pipeline''s
  recommendation, not a provider claim. 124 of 281 actions (44%) are human-in-the-loop by the provider''s
  own declaration, which is a materially stronger agentic-governance posture than the catalog norm.'
summary:
  operations: 281
  namespaces: 18
  by_action_class:
    connected: 149
    acting: 132
  by_consequence:
    read: 149
    safety-critical: 58
    physical: 66
    write: 8
  human_in_the_loop_required: 124
  provider_modes:
    read: 149
    risk: 58
    write: 74
  provider_review_gated: 124
  by_namespace:
    adjust: 4
    ads: 189
    appsflyer: 4
    bigquery: 4
    composio: 8
    doordash: 8
    ga4: 10
    gsc: 7
    integration: 3
    org: 4
    posthog: 4
    seo_hosting: 11
    shopify: 1
    shoplazza: 5
    sprout: 3
    stripe: 4
    toast: 6
    ubereats: 6
operations:
- operation: action:adjust/list_accounts
  namespace: adjust
  action_class: connected
  consequence: read
  provider_mode: read
  provider_requires_review: false
  human_in_the_loop: not-required
  token_ttl_seconds: 3600
  audit: recommended
  freshness: realtime
  platforms:
  - adjust
  summary: List the Adjust accounts this brand can query.
- operation: action:adjust/list_tools
  namespace: adjust
  action_class: connected
  consequence: read
  provider_mode: read
  provider_requires_review: false
  human_in_the_loop: not-required
  token_ttl_seconds: 3600
  audit: recommended
  freshness: realtime
  platforms:
  - adjust
  summary: List the Adjust attribution/analytics tools available for an account.
- operation: action:adjust/query
  namespace: adjust
  action_class: connected
  consequence: read
  provider_mode: read
  provider_requires_review: false
  human_in_the_loop: not-required
  token_ttl_seconds: 3600
  audit: recommended
  freshness: realtime
  platforms:
  - adjust
  summary: Run a read-only Adjust tool (aggregated performance, cohorts, events, SKAN, app metadata).
- operation: action:adjust/request_change
  namespace: adjust
  action_class: acting
  consequence: safety-critical
  provider_mode: risk
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 120
  audit: required
  freshness: realtime
  platforms:
  - adjust
  summary: Request a non-allowlisted Adjust tool (or a future write) via human approval.
  token:
    exchange: required
    purpose: required
  proof_of_possession: required
- operation: action:ads/add_account_negative_keywords
  namespace: ads
  action_class: acting
  consequence: safety-critical
  provider_mode: risk
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 120
  audit: required
  freshness: synced
  platforms:
  - google
  summary: Create or append to a Google account-level negative-keyword shared set (atomic); review-gated.
  token:
    exchange: required
    purpose: required
  proof_of_possession: required
- operation: action:ads/add_ad_group_negative_keywords
  namespace: ads
  action_class: acting
  consequence: safety-critical
  provider_mode: risk
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 120
  audit: required
  freshness: synced
  platforms:
  - google
  summary: Add negative keywords to a Google ad group (batch); review-gated.
  token:
    exchange: required
    purpose: required
  proof_of_possession: required
- operation: action:ads/add_audience_targeting
  namespace: ads
  action_class: acting
  consequence: safety-critical
  provider_mode: risk
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 120
  audit: required
  freshness: synced
  platforms:
  - google
  summary: Add an audience criterion to an ad group (ENABLED); supports USER_LIST, USER_INTEREST, CUSTOM_INTENT,
    CUSTOM_AUDIENCE, COMBINED_AUDIENCE; review-gated.
  token:
    exchange: required
    purpose: required
  proof_of_possession: required
- operation: action:ads/add_callouts
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - google
  summary: Add Google callout assets to a campaign (batch, atomic); review-gated.
  token:
    exchange: required
    purpose: required
- operation: action:ads/add_campaign_ad_units
  namespace: ads
  action_class: acting
  consequence: safety-critical
  provider_mode: risk
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 120
  audit: required
  freshness: synced
  platforms:
  - chatgpt_ads
  summary: 'Deprecated legacy compatibility: Append ChatGPT Ads ad units to a campaign.'
  token:
    exchange: required
    purpose: required
  proof_of_possession: required
- operation: action:ads/add_campaign_audience_targeting
  namespace: ads
  action_class: acting
  consequence: safety-critical
  provider_mode: risk
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 120
  audit: required
  freshness: synced
  platforms:
  - google
  summary: Add an audience criterion to a campaign; supports USER_LIST, USER_INTEREST, CUSTOM_AUDIENCE,
    COMBINED_AUDIENCE; review-gated.
  token:
    exchange: required
    purpose: required
  proof_of_possession: required
- operation: action:ads/add_campaign_negative_keywords
  namespace: ads
  action_class: acting
  consequence: safety-critical
  provider_mode: risk
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 120
  audit: required
  freshness: synced
  platforms:
  - google
  summary: Add negative keywords to a Google campaign (batch); review-gated.
  token:
    exchange: required
    purpose: required
  proof_of_possession: required
- operation: action:ads/add_campaign_webpage_exclusion
  namespace: ads
  action_class: acting
  consequence: safety-critical
  provider_mode: risk
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 120
  audit: required
  freshness: synced
  platforms:
  - google
  summary: Exclude webpages (URL paths, page titles, content) from a Google campaign via negative WEBPAGE
    criteria; review-gated.
  token:
    exchange: required
    purpose: required
  proof_of_possession: required
- operation: action:ads/add_conversion_group_rule
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - google
  - meta
  - tiktok
  - chatgpt_ads
  summary: Review-gated add of a conversion_group rule.
  token:
    exchange: required
    purpose: required
- operation: action:ads/add_keywords
  namespace: ads
  action_class: acting
  consequence: safety-critical
  provider_mode: risk
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 120
  audit: required
  freshness: synced
  platforms:
  - google
  summary: Add keywords to a Google ad group (batch, ENABLED); review-gated, reversible per keyword.
  token:
    exchange: required
    purpose: required
  proof_of_possession: required
- operation: action:ads/add_sitelinks
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - google
  summary: Add Google sitelink assets to a campaign (batch, atomic); review-gated.
  token:
    exchange: required
    purpose: required
- operation: action:ads/add_structured_snippets
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - google
  summary: Add a Google structured snippet asset to a campaign; review-gated, reversible.
  token:
    exchange: required
    purpose: required
- operation: action:ads/apply_ad_group_label
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - google
  summary: Attach a Google label to an ad group; review-gated, reversible.
  token:
    exchange: required
    purpose: required
- operation: action:ads/apply_campaign_label
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - google
  summary: Attach a Google label to a campaign; review-gated, reversible.
  token:
    exchange: required
    purpose: required
- operation: action:ads/apply_conversion_group_template
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - google
  - meta
  - tiktok
  - chatgpt_ads
  summary: Review-gated onboarding action that creates missing conversion groups and applies selected
    rules/goals/manual campaigns from templates.
  token:
    exchange: required
    purpose: required
- operation: action:ads/apply_label
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - meta
  summary: Apply a Meta ad label (by NAME) to a campaign/adset/ad/creative; review-gated, reversible.
  token:
    exchange: required
    purpose: required
- operation: action:ads/archive_ad
  namespace: ads
  action_class: acting
  consequence: safety-critical
  provider_mode: risk
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 120
  audit: required
  freshness: synced
  platforms:
  - chatgpt_ads
  summary: Archive one authored ChatGPT Ads Ad; review-gated risk action.
  token:
    exchange: required
    purpose: required
  proof_of_possession: required
- operation: action:ads/archive_ad_group
  namespace: ads
  action_class: acting
  consequence: safety-critical
  provider_mode: risk
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 120
  audit: required
  freshness: synced
  platforms:
  - chatgpt_ads
  summary: Archive one ChatGPT Ads Ad Group and its Ads; review-gated risk action.
  token:
    exchange: required
    purpose: required
  proof_of_possession: required
- operation: action:ads/archive_ad_unit
  namespace: ads
  action_class: acting
  consequence: safety-critical
  provider_mode: risk
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 120
  audit: required
  freshness: synced
  platforms:
  - chatgpt_ads
  summary: 'Deprecated legacy compatibility: Toggle archive state for one ChatGPT Ads ad unit; review-gated
    risk action.'
  token:
    exchange: required
    purpose: required
  proof_of_possession: required
- operation: action:ads/archive_lead_form
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - meta
  summary: Archive a Meta lead form (status=ARCHIVED); review-gated. Meta has no lead-form delete; collected
    leads remain readable.
  token:
    exchange: required
    purpose: required
- operation: action:ads/audit_ad_automation_inventory
  namespace: ads
  action_class: connected
  consequence: read
  provider_mode: read
  provider_requires_review: false
  human_in_the_loop: not-required
  token_ttl_seconds: 3600
  audit: recommended
  freshness: realtime
  platforms:
  - google
  - meta
  - tiktok
  - chatgpt_ads
  summary: Read-only paginated TikTok, Google, Meta, or ChatGPT Ads audit of every automation baseline
    currently tracked for one brand-scoped ad account.
- operation: action:ads/audit_creative_automation
  namespace: ads
  action_class: connected
  consequence: read
  provider_mode: read
  provider_requires_review: false
  human_in_the_loop: not-required
  token_ttl_seconds: 3600
  audit: recommended
  freshness: realtime
  platforms:
  - google
  - meta
  summary: 'Read-only drift audit: compare a Meta creative''s or Google campaign''s live AI-automation
    settings against the approved intent baseline.'
- operation: action:ads/bind_conversion_group_goal
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - google
  - meta
  - tiktok
  - chatgpt_ads
  summary: Review-gated link of a platform conversion goal to a conversion group.
  token:
    exchange: required
    purpose: required
- operation: action:ads/bulk_create_ad_creatives
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - meta
  summary: Bulk-create Meta ad creatives in one review-gated request; executes items sequentially.
  token:
    exchange: required
    purpose: required
- operation: action:ads/bulk_create_ads
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - meta
  - tiktok
  summary: Bulk-create Meta ads in one review-gated request; executes items sequentially. Also supports
    TikTok through its provider-native contract.
  token:
    exchange: required
    purpose: required
- operation: action:ads/bulk_create_adsets
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - meta
  - tiktok
  summary: Bulk-create Meta ad sets in one review-gated request; executes items sequentially. Also supports
    TikTok through its provider-native contract.
  token:
    exchange: required
    purpose: required
- operation: action:ads/bulk_create_campaigns
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - meta
  - tiktok
  summary: Bulk-create Meta campaigns in one review-gated request; executes items sequentially. Also supports
    TikTok through its provider-native contract.
  token:
    exchange: required
    purpose: required
- operation: action:ads/clear_conversion_group_manual_campaign
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - google
  - meta
  - tiktok
  - chatgpt_ads
  summary: Review-gated clear of a manual campaign include/exclude on a conversion group.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_ad
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - google
  - meta
  - tiktok
  - chatgpt_ads
  - linkedin
  summary: Create an ad on Google (RSA) or Meta in PAUSED state; review-gated, reversible via remove_ad.
    Also supports TikTok through its provider-native contract.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_ad_creative
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - meta
  summary: Create a Meta ad creative (image / video / carousel); review-gated, reversible via UI.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_ad_group
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - google
  - chatgpt_ads
  summary: Create a paused Google or ChatGPT Ads Ad Group; review-gated. ChatGPT Ads supports manual authored
    Ads or a generative group.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_ad_label
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - meta
  summary: Create a Meta ad label on an account; review-gated, reversible via UI.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_ad_rule
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - meta
  - tiktok
  summary: Create a Meta or TikTok automated ad rule; review-gated.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_ad_unit
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - chatgpt_ads
  summary: 'Deprecated legacy compatibility: Create a ChatGPT Ads ad unit draft; review-gated.'
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_adset
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - meta
  - tiktok
  summary: Create a review-gated Meta ad set or TikTok ad group. Meta is force-paused; TikTok defaults
    to operation_status=DISABLE.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_bidding_strategy
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - google
  summary: Create a reusable Google portfolio Target CPA or Target ROAS strategy.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_campaign
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - google
  - meta
  - tiktok
  - chatgpt_ads
  - linkedin
  summary: Create a review-gated campaign on Google, Meta, TikTok, or ChatGPT Ads. Creation defaults to
    PAUSED; TikTok preserves an explicitly approved ENABLED status.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_change_history_task
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: realtime
  platforms:
  - tiktok
  summary: Create a TikTok asynchronous change-log export task.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_conversion_action
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - google
  summary: Create an ENABLED Google Ads conversion action for attribution; review-gated.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_conversion_group
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - google
  - meta
  - tiktok
  - chatgpt_ads
  summary: Review-gated create of an Admin View conversion_group.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_custom_audience
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - meta
  - tiktok
  summary: Create a Meta custom audience; review-gated, reversible via Meta UI. Also supports TikTok through
    its provider-native contract.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_gmv_max_campaign
  namespace: ads
  action_class: acting
  consequence: safety-critical
  provider_mode: risk
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 120
  audit: required
  freshness: synced
  platforms:
  - tiktok
  summary: Create a TikTok Shop GMV Max campaign.
  token:
    exchange: required
    purpose: required
  proof_of_possession: required
- operation: action:ads/create_label
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - google
  summary: Create a Google Ads label for organization tagging; review-gated, reversible.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_lead_form
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - meta
  summary: Create a Meta lead form attached to a Page; review-gated, reversible via UI.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_lookalike_audience
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - meta
  - tiktok
  summary: Create a Meta lookalike audience from a source audience; review-gated, populates asynchronously.
    Also supports TikTok through its provider-native contract.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_pixel
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - meta
  - tiktok
  summary: Create a Meta or TikTok Pixel (ads pixel) on an ad account; review-gated, reversible via UI.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_pmax_campaign
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - google
  summary: Create a complete Google Performance Max campaign (budget + campaign + asset group + assets
    + optional audience signals) in one atomic mutate, PAUSED; review-gated, reversible via remove_campaign.
    Google only.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_product_catalog
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: realtime
  platforms:
  - meta
  - tiktok
  summary: Create a Meta product catalog under the account business; review-gated platform write. Also
    supports TikTok through its provider-native contract.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_product_feed
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: realtime
  platforms:
  - meta
  - tiktok
  summary: Create a Meta product feed in an owned catalog; review-gated platform write. Also supports
    TikTok through its provider-native contract.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_rule_custom_audience
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - tiktok
  summary: Create a TikTok rule-based custom audience.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_smart_plus_campaign
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - tiktok
  summary: Create a TikTok Smart+ campaign.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_text_asset
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - google
  summary: Create a Google Ads text asset (headline / description / long headline); returns the asset_id.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_user_list
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - google
  summary: Create a Google CRM-based Customer Match user list destination; review-gated.
  token:
    exchange: required
    purpose: required
- operation: action:ads/create_youtube_video_asset
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - google
  summary: Create a Google Ads YouTube video asset from an existing YouTube video id; returns the asset_id.
  token:
    exchange: required
    purpose: required
- operation: action:ads/delete_conversion_group
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - google
  - meta
  - tiktok
  - chatgpt_ads
  summary: Review-gated delete of an Admin View conversion_group.
  token:
    exchange: required
    purpose: required
- operation: action:ads/deploy_image_ads_batch
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - meta
  summary: Create many Meta image creatives and paused ads from existing image_hash values; review-gated
    bulk write.
  token:
    exchange: required
    purpose: required
- operation: action:ads/download_change_history
  namespace: ads
  action_class: connected
  consequence: read
  provider_mode: read
  provider_requires_review: false
  human_in_the_loop: not-required
  token_ttl_seconds: 3600
  audit: recommended
  freshness: realtime
  platforms:
  - tiktok
  summary: Download a completed TikTok change-log export.
- operation: action:ads/enable_ad_automation_audits
  namespace: ads
  action_class: acting
  consequence: safety-critical
  provider_mode: risk
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 120
  audit: required
  freshness: realtime
  platforms:
  - google
  - meta
  - tiktok
  - chatgpt_ads
  summary: HITL provision or recover the current brand's 48-hour and weekly full-current-state Google,
    Meta, TikTok, and ChatGPT Ads automation audits.
  token:
    exchange: required
    purpose: required
  proof_of_possession: required
- operation: action:ads/establish_automation_baseline
  namespace: ads
  action_class: acting
  consequence: safety-critical
  provider_mode: risk
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 120
  audit: required
  freshness: realtime
  platforms:
  - google
  - meta
  - tiktok
  - chatgpt_ads
  summary: HITL Google, Meta, TikTok, or ChatGPT Ads confirmation of a fresh provider state as a human
    baseline.
  token:
    exchange: required
    purpose: required
  proof_of_possession: required
- operation: action:ads/estimate_audience_size
  namespace: ads
  action_class: connected
  consequence: read
  provider_mode: read
  provider_requires_review: false
  human_in_the_loop: not-required
  token_ttl_seconds: 3600
  audit: recommended
  freshness: synced
  platforms:
  - meta
  - tiktok
  summary: Estimate audience size for a Meta targeting spec or flat TikTok ad-group targeting.
- operation: action:ads/gaql_search
  namespace: ads
  action_class: connected
  consequence: read
  provider_mode: read
  provider_requires_review: false
  human_in_the_loop: not-required
  token_ttl_seconds: 3600
  audit: recommended
  freshness: realtime
  platforms:
  - google
  summary: Realtime Google Ads GAQL exploration for native fields, segments, resource attributes, or combinations
    outside cached query coverage.
- operation: action:ads/generate_ad_preview
  namespace: ads
  action_class: connected
  consequence: read
  provider_mode: read
  provider_requires_review: false
  human_in_the_loop: not-required
  token_ttl_seconds: 3600
  audit: recommended
  freshness: synced
  platforms:
  - meta
  - tiktok
  summary: Read a Meta ad preview HTML iframe for a creative + ad_format; read-only. Also supports TikTok
    through its provider-native contract.
- operation: action:ads/generate_ad_units
  namespace: ads
  action_class: acting
  consequence: physical
  provider_mode: write
  provider_requires_review: true
  human_in_the_loop: required
  token_ttl_seconds: 300
  audit: required
  freshness: synced
  platforms:
  - chatgpt_ads
  summary: 'Deprecated legacy compatibility: Generate ChatGPT Ads draft ad units from a landing page URL.'
  token:
    exchange: required
    purpose: required
- operation: action:ads/get_account_info
  namespace: ads
  action_class: con

# --- truncated at 32 KB (123 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/nexad/refs/heads/main/agentic-access/nexad-agentic-access.yml