Scope3 · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Scope3 Storefront API
160 actions
160 updates
phrasing
extends
openapi/scope3-storefront-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Scope3's API. It is a proposal applied on top of the contract, not a document Scope3 publishes.
What the actions change
x-apievangelist-phrasing
Targets 160 · first 16 shown; the file carries all of them
$.info
$.paths['/account-mappings/summary'].get
$.paths['/account-mappings'].get
$.paths['/account-mappings/export'].get
$.paths['/account-mappings/reviews'].get
$.paths['/account-mappings/reviews/{grantId}/decision'].post
$.paths['/account-mappings/sources/{inventorySourceId}/refresh'].post
$.paths['/account-mappings/imports/prepare'].post
$.paths['/account-mappings/imports/{revisionId}/preview'].post
$.paths['/account-mappings/imports/{revisionId}/commit'].post
$.paths['/account-mappings/imports/{revisionId}'].get
$.paths['/storefront'].get
$.paths['/storefront'].put
$.paths['/storefront'].post
$.paths['/storefront'].patch
$.paths['/demo'].get
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Scope3 Storefront API
version: 1.0.0
extends: openapi/scope3-storefront-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-10-01'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 159
- target: $.paths['/account-mappings/summary'].get
update:
x-apievangelist-phrasing:
intent: Summarize seller account mapping coverage
effect: read
questions:
- How many buyer relationships do I have mapped across my active inventory sources?
- What does the summary on the Buyer Account Mapping page count?
instructions:
- text: Show me the coverage counts for my seller account mappings.
- text: Give me a quick summary of how many operator and brand relationships are mapped to active sources.
method: generated
generated: '2026-10-01'
- target: $.paths['/account-mappings'].get
update:
x-apievangelist-phrasing:
intent: List seller account relationships
effect: read
questions:
- Which operator and brand relationships does my storefront own?
- Can I search my seller account relationships by name and page through them?
instructions:
- text: List my seller account relationships matching {search}.
slots:
search: query.search
- text: Show {limit} seller account relationships starting at offset {offset}.
slots:
limit: query.limit
offset: query.offset
method: generated
generated: '2026-10-01'
- target: $.paths['/account-mappings/export'].get
update:
x-apievangelist-phrasing:
intent: Export seller account mappings as CSV
effect: read
questions:
- Can I download my current account mappings and the mapping template as CSV?
- Where do I get the source-mapping template to fill in offline?
instructions:
- text: Export my seller account mappings and the blank mapping template as CSV files.
- text: Download the healthy source-account mappings I currently have.
method: generated
generated: '2026-10-01'
- target: $.paths['/account-mappings/reviews'].get
update:
x-apievangelist-phrasing:
intent: List pending buyer account requests
effect: read
questions:
- Which buyer account requests are waiting for me to approve or reject?
- Do pending buyer account requests include the version I need to make a decision?
instructions:
- text: Show the buyer account requests awaiting my decision.
- text: List {limit} pending buyer account requests from offset {offset}.
slots:
limit: query.limit
offset: query.offset
method: generated
generated: '2026-10-01'
- target: $.paths['/account-mappings/reviews/{grantId}/decision'].post
update:
x-apievangelist-phrasing:
intent: Approve or reject a buyer account request
effect: write
questions:
- Can I reject a buyer's account request, and do I have to give a reason?
- What happens if I approve a buyer account request for Interchange-cleared billing?
instructions:
- text: Approve buyer account request {grantId}.
slots:
grantId: path.grantId
- text: Reject buyer account request {grantId} with a reason.
slots:
grantId: path.grantId
method: generated
generated: '2026-10-01'
- target: $.paths['/account-mappings/sources/{inventorySourceId}/refresh'].post
update:
x-apievangelist-phrasing:
intent: Refresh advertiser choices for an ad-server source
effect: write
questions:
- Can I reload the advertiser list from my Google Ad Manager or FreeWheel source for account mapping?
- Which ad servers support refreshing the source-account roster?
instructions:
- text: Refresh the advertiser account choices for inventory source {inventorySourceId}.
slots:
inventorySourceId: path.inventorySourceId
- text: Pull the latest ad-server advertiser roster into account mapping for source {inventorySourceId}.
slots:
inventorySourceId: path.inventorySourceId
method: generated
generated: '2026-10-01'
- target: $.paths['/account-mappings/imports/prepare'].post
update:
x-apievangelist-phrasing:
intent: Prepare an account mapping feed upload
effect: write
questions:
- How do I get a signed upload URL for my source_account_bindings.csv file?
- Can I upload account mappings as a snapshot that covers specific inventory sources?
instructions:
- text: Prepare an account mapping feed upload in {mode} mode for revision {sourceRevision}.
slots:
mode: requestBody.mode
sourceRevision: requestBody.sourceRevision
- text: Reserve a mapping feed revision for {file} covering sources {coveredInventorySourceKeys}.
slots:
file: requestBody.file
coveredInventorySourceKeys: requestBody.coveredInventorySourceKeys
method: generated
generated: '2026-10-01'
- target: $.paths['/account-mappings/imports/{revisionId}/preview'].post
update:
x-apievangelist-phrasing:
intent: Validate and preview an account mapping feed
effect: read
questions:
- Can I see which rows of my uploaded account mapping file are invalid before applying it?
- What impact will my mapping feed revision have before I commit it?
instructions:
- text: Validate and preview uploaded account mapping revision {revisionId}.
slots:
revisionId: path.revisionId
- text: Check mapping feed revision {revisionId} for bad rows and get a preview token.
slots:
revisionId: path.revisionId
method: generated
generated: '2026-10-01'
- target: $.paths['/account-mappings/imports/{revisionId}/commit'].post
update:
x-apievangelist-phrasing:
intent: Commit a previewed account mapping feed
effect: write
questions:
- Will committing a mapping feed overwrite the manual mappings I made?
- Can I apply only part of a reviewed account mapping feed?
instructions:
- text: Commit account mapping revision {revisionId} using preview token {previewToken}.
slots:
revisionId: path.revisionId
previewToken: requestBody.previewToken
- text: Apply mapping feed {revisionId} with idempotency key {idempotencyKey} and preview token {previewToken}.
slots:
revisionId: path.revisionId
idempotencyKey: requestBody.idempotencyKey
previewToken: requestBody.previewToken
method: generated
generated: '2026-10-01'
- target: $.paths['/account-mappings/imports/{revisionId}'].get
update:
x-apievangelist-phrasing:
intent: Check an account mapping feed revision
effect: read
questions:
- What state is my account mapping feed upload in right now?
- Where can I see diagnostics for a mapping feed revision I uploaded?
instructions:
- text: Show the status and diagnostics of mapping feed revision {revisionId}.
slots:
revisionId: path.revisionId
- text: Get the lifecycle and impact of account mapping revision {revisionId}.
slots:
revisionId: path.revisionId
method: generated
generated: '2026-10-01'
- target: $.paths['/storefront'].get
update:
x-apievangelist-phrasing:
intent: Get my storefront
effect: read
questions:
- What is my storefront currently configured as?
- Can I see my storefront's name, publisher domain and plan?
instructions:
- text: Show me my storefront.
- text: Fetch my current storefront configuration.
method: generated
generated: '2026-10-01'
- target: $.paths['/storefront'].put
update:
x-apievangelist-phrasing:
intent: Update storefront settings
effect: write
questions:
- Can I pause my storefront so it stops transacting?
- How do I change which countries and currencies my storefront accepts?
- Can I update the demand contact email and logo buyers see?
instructions:
- text: Pause my storefront by setting paused to {isPaused}.
slots:
isPaused: requestBody.isPaused
- text: Change my storefront's default currency to {defaultCurrency}.
slots:
defaultCurrency: requestBody.defaultCurrency
- text: Set the storefront demand contact to {demandContactName} at {demandContactEmail}.
slots:
demandContactName: requestBody.demandContactName
demandContactEmail: requestBody.demandContactEmail
method: generated
generated: '2026-10-01'
- target: $.paths['/storefront'].post
update:
x-apievangelist-phrasing:
intent: Create a storefront
effect: write
questions:
- What do I need to set up a new storefront?
- Is creating a storefront safe to repeat if I already have one?
instructions:
- text: Create a storefront named {name} for publisher domain {publisherDomain}.
slots:
name: requestBody.name
publisherDomain: requestBody.publisherDomain
- text: Set up my storefront {name} with default currency {defaultCurrency}.
slots:
name: requestBody.name
defaultCurrency: requestBody.defaultCurrency
method: generated
generated: '2026-10-01'
- target: $.paths['/storefront'].patch
update:
x-apievangelist-phrasing:
intent: Patch legacy storefront capabilities
effect: write
questions:
- Can I change just the storefront capabilities without resending the whole configuration?
- Where do I update my storefront's setup intent on its own?
instructions:
- text: Patch only my storefront capabilities to {capabilities}.
slots:
capabilities: requestBody.capabilities
- text: Update just the storefront setup intent to {setupIntent}.
slots:
setupIntent: requestBody.setupIntent
method: generated
generated: '2026-10-01'
- target: $.paths['/demo'].get
update:
x-apievangelist-phrasing:
intent: Get my Demo Storefront
effect: read
questions:
- Do I have a Demo Storefront, and when does its lease expire?
- What synthetic profile is my demo storefront running on?
instructions:
- text: Show my Demo Storefront and its lease status.
- text: Check whether a demo storefront exists for my account.
method: generated
generated: '2026-10-01'
- target: $.paths['/demo'].post
update:
x-apievangelist-phrasing:
intent: Create a seven-day Demo Storefront
effect: write
questions:
- Can I spin up a demo storefront to try things without real side effects?
- How long does a new Demo Storefront last?
instructions:
- text: Create a Demo Storefront from profile {profileId}.
slots:
profileId: requestBody.profileId
- text: Start a demo storefront using profile {profileId} version {profileVersion}.
slots:
profileId: requestBody.profileId
profileVersion: requestBody.profileVersion
method: generated
generated: '2026-10-01'
- target: $.paths['/demo'].delete
update:
x-apievangelist-phrasing:
intent: Delete my Demo Storefront
effect: destructive
questions:
- Does deleting my demo storefront remove my customer account too?
- Can I throw away the demo storefront and its synthetic data?
instructions:
- text: Delete my Demo Storefront.
- text: Tear down the demo storefront and all its synthetic resources.
method: generated
generated: '2026-10-01'
- target: $.paths['/demo/reset'].post
update:
x-apievangelist-phrasing:
intent: Reset the Demo Storefront
effect: destructive
questions:
- Can I rebuild my demo storefront back to its starting state?
- Does resetting the demo storefront extend its lease?
instructions:
- text: Reset my Demo Storefront to its pinned profile.
- text: Rebuild the demo storefront from scratch without extending it.
method: generated
generated: '2026-10-01'
- target: $.paths['/demo/source-recipes'].get
update:
x-apievangelist-phrasing:
intent: List demo source recipes
effect: read
questions:
- Which synthetic inventory sources can I add to a demo storefront?
- What composition presets are available for demo storefronts?
instructions:
- text: List the demo source recipes I can attach.
- text: Show the synthetic modular-source recipes for demos.
method: generated
generated: '2026-10-01'
- target: $.paths['/demo/sources'].post
update:
x-apievangelist-phrasing:
intent: Attach synthetic sources to the demo
effect: write
questions:
- Can I add several synthetic inventory sources to my demo storefront at once?
- How do I give my demo storefront some fake inventory to sell?
instructions:
- text: Attach demo source recipes {recipeIds} to my Demo Storefront.
slots:
recipeIds: requestBody.recipeIds
- text: Add the synthetic sources {recipeIds} to the active demo.
slots:
recipeIds: requestBody.recipeIds
method: generated
generated: '2026-10-01'
- target: $.paths['/demo/sources/{sourceId}'].delete
update:
x-apievangelist-phrasing:
intent: Remove a source from the demo
effect: destructive
questions:
- Can I take one synthetic source back out of my demo storefront?
- What happens to the generated inventory when I remove a demo source?
instructions:
- text: Remove demo source {sourceId} from my Demo Storefront.
slots:
sourceId: path.sourceId
- text: Detach synthetic source {sourceId} and its inventory from the demo.
slots:
sourceId: path.sourceId
method: generated
generated: '2026-10-01'
- target: $.paths['/demo/extend'].post
update:
x-apievangelist-phrasing:
intent: Extend the Demo Storefront lease
effect: write
questions:
- Can I keep my demo storefront longer than seven days?
- How many days can I extend a demo storefront by?
instructions:
- text: Extend my Demo Storefront by {days} days.
slots:
days: requestBody.days
- text: Push back the demo storefront expiry.
method: generated
generated: '2026-10-01'
- target: $.paths['/readiness'].get
update:
x-apievangelist-phrasing:
intent: Check if the storefront can go live
effect: read
questions:
- Is my storefront ready to go live?
- What is blocking my storefront from launching?
instructions:
- text: Check my storefront's go-live readiness.
- text: List the blocking checks for inventory sources and agent auth before launch.
method: generated
generated: '2026-10-01'
- target: $.paths['/readiness/compliance'].get
update:
x-apievangelist-phrasing:
intent: Get the latest compliance check
effect: read
questions:
- Did my storefront pass its last compliance check?
- Has a compliance readiness check ever run on my storefront?
instructions:
- text: Show my storefront's most recent compliance result.
- text: Get the last compliance readiness check.
method: generated
generated: '2026-10-01'
- target: $.paths['/readiness/compliance/refresh'].post
update:
x-apievangelist-phrasing:
intent: Re-run the storefront compliance check
effect: write
questions:
- Can I re-run compliance against just one agent?
- How do I recheck compliance after fixing a source health issue?
instructions:
- text: Re-run the compliance check for agent {agentId}.
slots:
agentId: requestBody.agentId
- text: Recheck compliance across all my storefront's agents now.
method: generated
generated: '2026-10-01'
- target: $.paths['/resolve-brand'].post
update:
x-apievangelist-phrasing:
intent: Look up a brand profile by domain
effect: read
questions:
- Is there a brand profile on agenticadvertising.org for this domain?
- Can I get a brand's name and logo just from its website domain?
instructions:
- text: Resolve the brand profile for {domain}.
slots:
domain: requestBody.domain
- text: Look up the brand name and logo for domain {domain}.
slots:
domain: requestBody.domain
method: generated
generated: '2026-10-01'
- target: $.paths['/discover-agents'].get
update:
x-apievangelist-phrasing:
intent: Find agents authorized for a domain
effect: read
questions:
- Which operator and publisher agents are authorized to sell a given domain?
- Can I bypass the cached agent discovery result for a domain?
instructions:
- text: Discover the authorized agents for {domain}.
slots:
domain: query.domain
- text: Find agents for {domain} and bypass the cache with refresh {refresh}.
slots:
domain: query.domain
refresh: query.refresh
method: generated
generated: '2026-10-01'
- target: $.paths['/inventory-sources'].get
update:
x-apievangelist-phrasing:
intent: List inventory sources
effect: read
questions:
- Which inventory sources are connected to my storefront?
- What sources of inventory am I selling from today?
instructions:
- text: List all my storefront's inventory sources.
- text: Show every inventory source on the storefront.
method: generated
generated: '2026-10-01'
- target: $.paths['/inventory-sources'].post
update:
x-apievangelist-phrasing:
intent: Create an inventory source
effect: write
questions:
- Can I add a new inventory source and register its sales agent at the same time?
- What authentication types can a new inventory source use?
instructions:
- text: Create an inventory source named {name} pointing at {endpointUrl}.
slots:
name: requestBody.name
endpointUrl: requestBody.endpointUrl
- text: Add inventory source {name} using protocol {protocol} and {authenticationType} auth.
slots:
name: requestBody.name
protocol: requestBody.protocol
authenticationType: requestBody.authenticationType
method: generated
generated: '2026-10-01'
- target: $.paths['/inventory-sources/{sourceId}'].get
update:
x-apievangelist-phrasing:
intent: Get an inventory source
effect: read
questions:
- What are the settings of one specific inventory source?
- Can I look up an inventory source by its source ID?
instructions:
- text: Show inventory source {sourceId}.
slots:
sourceId: path.sourceId
- text: Get the details of source {sourceId}.
slots:
sourceId: path.sourceId
method: generated
generated: '2026-10-01'
- target: $.paths['/inventory-sources/{sourceId}'].put
update:
x-apievangelist-phrasing:
intent: Update an inventory source
effect: write
questions:
- Does changing an inventory source's status affect its linked agent?
- Can I point an existing inventory source at a new endpoint URL?
instructions:
- text: Set the status of inventory source {sourceId} to {status}.
slots:
sourceId: path.sourceId
status: requestBody.status
- text: Rename inventory source {sourceId} to {name}.
slots:
sourceId: path.sourceId
name: requestBody.name
- text: Change the endpoint of source {sourceId} to {endpointUrl}.
slots:
sourceId: path.sourceId
endpointUrl: requestBody.endpointUrl
method: generated
generated: '2026-10-01'
- target: $.paths['/inventory-sources/{sourceId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete an inventory source
effect: destructive
questions:
- What happens to the linked agent when I delete an inventory source?
- Can I permanently remove an inventory source from my storefront?
instructions:
- text: Delete inventory source {sourceId}.
slots:
sourceId: path.sourceId
- text: Remove source {sourceId} and disable its agent.
slots:
sourceId: path.sourceId
method: generated
generated: '2026-10-01'
- target: $.paths['/inventory-sources/{sourceId}/diagnostics'].get
update:
x-apievangelist-phrasing:
intent: Get call health diagnostics for a source
effect: read
questions:
- Is my inventory source timing out or failing calls lately?
- How has a source's latency moved compared with the prior window?
instructions:
- text: Show call health diagnostics for source {sourceId}.
slots:
sourceId: path.sourceId
- text: Get latency and failure stats for source {sourceId} over the last {windowHours} hours.
slots:
sourceId: path.sourceId
windowHours: query.windowHours
method: generated
generated: '2026-10-01'
- target: $.paths['/inventory-sources/{sourceId}/mapping-workspace'].get
update:
x-apievangelist-phrasing:
intent: View a source's mapping workspace
effect: read
questions:
- Can I see how my storefront identities map through one inventory source?
- Which product paths on a source are ready versus inactive?
instructions:
- text: Open the mapping workspace for source {sourceId}.
slots:
sourceId: path.sourceId
- text: Show storefront-built and agent-supplied mapping readiness for source {sourceId}.
slots:
sourceId: path.sourceId
method: generated
generated: '2026-10-01'
- target: $.paths['/inventory-sources/{sourceId}/tests/discovery'].post
update:
x-apievangelist-phrasing:
intent: Run a product discovery test on a source
effect: read
questions:
- Can I test whether a sales agent returns products without creating a media buy?
- Does a discovery test on a source spend any money?
instructions:
- text: Run a discovery test against source {sourceId}.
slots:
sourceId: path.sourceId
- text: Test get_products on source {sourceId} with the brief {brief}.
slots:
sourceId: path.sourceId
brief: requestBody.brief
method: generated
generated: '2026-10-01'
- target: $.paths['/inventory-sources/{sourceId}/wholesale-pricing/template'].get
update:
x-apievangelist-phrasing:
intent: Download the wholesale pricing CSV template
effect: read
questions:
- Where do I get a pre-filled wholesale avails and pricing template for a source?
- Does the wholesale pricing template list each ad-server selector my products use?
instructions:
- text: Download the wholesale pricing template for source {sourceId}.
slots:
sourceId: path.sourceId
- text: Get the pre-filled avails and pricing CSV for source {sourceId}.
slots:
sourceId: path.sourceId
method: generated
generated: '2026-10-01'
- target: $.paths['/inventory-sources/{sourceId}/property-mappings'].get
update:
x-apievangelist-phrasing:
intent: List property and tag mappings for a source
effect: read
questions:
- Which properties and tags have I mapped on a managed sales-agent source?
- Can I review my seller-authored property mappings?
instructions:
- text: List the property mappings on source {sourceId}.
slots:
sourceId: path.sourceId
- text: Show the tag and property mappings I authored for source {sourceId}.
slots:
sourceId: path.sourceId
method: generated
generated: '2026-10-01'
- target: $.paths['/inventory-sources/{sourceId}/property-mappings'].put
update:
x-apievangelist-phrasing:
intent: Replace all property mappings for a source
effect: write
questions:
- Can I dry-run a replacement of my property mappings before applying it?
- Does replacing property mappings overwrite all of them at once?
instructions:
- text: Dry-run replacing the property mappings on source {sourceId} with dry run {dry_run}.
slots:
sourceId: path.sourceId
dry_run: query.dry_run
- text: Replace every property and tag mapping on source {sourceId}.
slots:
sourceId: path.sourceId
method: generated
generated: '2026-10-01'
- target: $.paths['/inventory-sources/ad-servers/citrusad'].post
update:
x-apievangelist-phrasing:
intent: Connect CitrusAd as an ad server
effect: write
questions:
- Can I connect CitrusAd for sponsored products to my storefront?
- What CitrusAd details do I need to connect it, like team ID and namespaces?
instructions:
- text: Connect CitrusAd team {teamId} in the {environment} environment with namespaces {namespaces}.
slots:
teamId: requestBody.teamId
environment: requestBody.environment
namespaces: requestBody.namespaces
- text: Hook up CitrusAd in {environment} for team {teamId}, namespaces {namespaces}, priced in {defaultCurrency}.
slots:
environment: requestBody.environment
teamId: requestBody.teamId
namespaces: requestBody.namespaces
defaultCurrency: requestBody.defaultCurrency
method: generated
generated: '2026-10-01'
- target: $.paths['/inventory-sources/{sourceId}/ad-servers/citrusad/credentials/{credentialKind}'].put
update:
x-apievangelist-phrasing:
intent: Rotate a CitrusAd credential
effect: write
questions:
- Can I swap in a new CitrusAd credential on an existing source?
- Is the rotated CitrusAd secret ever stored in the source config?
instructions:
- text: Rotate the CitrusAd {credentialKind} credential on source {sourceId}.
slots:
credentialKind: path.credentialKind
sourceId: path.sourceId
- text: Replace the CitrusAd {credentialKind} credential for source {sourceId} with {auth}.
slots:
credentialKind: path.credentialKind
sourceId: path.sourceId
auth: requestBody.auth
method: generated
generated: '2026-10-01'
- target: $.paths['/inventory-sources/{sourceId}/ad-servers/citrusad/credentials/{credentialKind}'].post
update:
x-apievangelist-phrasing:
intent: Save a first CitrusAd credential
effect: write
questions:
- Where do I store my CitrusAd credentials after connecting it?
- Will the CitrusAd credential I save ever be returned by the API?
instructions:
- text: Save a new CitrusAd {credentialKind} credential for source {sourceId}.
slots:
credentialKind: path.credentialKind
sourceId: path.sourceId
- text: Store CitrusAd {credentialKind} auth {auth} on source {sourceId}.
slots:
credentialKind: path.credentialKind
auth: requestBody.auth
sourceId: path.sourceId
method: generated
generated: '2026-10-01'
- target: $.paths['/inventory-sources/{sourceId}/ad-servers/citrusad/credentials/{credentialKind}'].delete
update:
x-apievangelist-phrasing:
intent: Revoke a CitrusAd credential
effect: destructive
questions:
- Can I revoke a CitrusAd credential and delete its stored secret?
- What happens when I revoke CitrusAd access on a source?
instructions:
- text: Revoke the CitrusAd {credentialKind} credential on source {sourceId}.
slots:
credentialKind: path.credentialKind
sourceId: path.sourceId
- text: Delete the stored CitrusAd {credentialKind} secret for source {sourceId}.
slots:
credentialKind: path.credentialKind
sourceId: path.sourceId
method: generated
generated: '2026-10-01'
- target: $.paths['/inventory-sources/modular/feed'].post
update:
x-apievangelist-phrasing:
intent: Create a feed-backed modular source
effect: write
questions:
- Can I create an inventory source from an uploaded avails feed?
- Does a feed-backed modular source include a booking ledger by default?
instructions:
- text: Create a modular avails-feed source named {name}.
slots:
name: requestBody.name
- text: Set up feed source {name} with the booking ledger set to {includeBookingLedger}.
slots:
name: requestBody.name
includeBookingLedger: requestBody.includeBookingLedger
method: generated
generated: '2026-10-01'
- target: $.paths['/inventory-sources/modular/cadent-demo'].post
update:
x-apievangelist-phrasing:
intent: Create or reset a Cadent demo source
effect: write
questions:
- Can I set up a Cadent-backed demo source for a live demo?
- How do I reset the Cadent demo source with fresh avails?
instructions:
- text: Create a Cadent demo modular source named {name}.
slots:
name: requestBody.name
- text: Reset the Cadent demo source with reset {reset} and seed avails {seedAvails}.
slots:
reset: requestBody.reset
seedAvails: requestBody.seedAvails
method: generated
generated: '2026-10-01'
- target: $.paths['/inventory-sources/modular/freewheel-sandbox'].post
update:
x-apievangelist-phrasing:
intent: Create a FreeWheel sandbox source
effect: write
questions:
- Can I create a FreeWheel sandbox source with live taxonomy selectors?
- Do I need to provide FreeWheel credentials for the sandbox source?
instructions:
- text: Create a FreeWheel sandbox modular source named {name}.
slots:
name: requestBody.name
- text: Set up the FreeWheel sandbox source for advertiser {advertiserId}.
slots:
advertiserId: requestBody.advertiserId
method: generated
generated: '2026-10-01'
- target: $.paths['/inventory-sources/{sourceId}/modular'].get
update:
x-apievangelist-phrasing:
intent: Check a modular source's setup readiness
effect: read
questions:
- What setup fields are still missing on my modular inventory source?
- Which lifecycle stage is a modular source in, and how much open work does it have?
instructions:
- text: Show the readiness of modular source {sourceId}.
slots:
sourceId: path.sourceId
- text: List missing setup fields and issues for modular source {sourceId}.
slots:
sourceId: path.sourceId
method: generated
generated: '2026-10-01'
- target: $.paths['/inventory-sources/{sourceId}/modular/avails-feed'].post
update:
x-apievangelist-phrasing:
intent: Load confirmed avails into a modular source
effect: write
questions:
- How do I load avails into a modular source's static feed after reviewing them?
- Can I send avails as CSV text instead of structured rows?
instructions:
- text: Ingest the reviewed avails into modular source {sourceId} with confirmed {confirmed}.
slots:
sourceId: path.sourceId
confirmed: requestBody.confirmed
- text: Upsert avails from this CSV {csvText} into modular source {sourceId}.
slots:
csvText: requestBody.csvText
sourceId: path.sourceId
method: generated
generated: '2026-10-01'
# --- truncated at 32 KB (108 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/scope3/refs/heads/main/overlays/scope3-storefront-api-phrasing-overlay.yaml