The ACP-compatible feed of listed doors and their visible actions
The directory reshaped for agents WITHOUT an MCP client (ChatGPT/Gemini-class crawlers and feed ingesters): one row per listed door's visible action — an ask-only door gets one door row — carrying the Agentic Commerce Protocol product-feed REQUIRED fields (item_id, title, description, brand, url, price, availability, is_eligible_search, is_eligible_checkout, seller_name, seller_url) plus bubblio_* extension fields pointing at the agent-native MCP path.
These are service actions, not retail SKUs, and the divergences are DECLARED in the body's mapping notes rather than faked: no image_url; availability is always in_stock (a listed action is live — services carry no inventory); free actions and door rows price at 0.00 USD; is_eligible_checkout is false on every row because ACP checkout endpoints are not implemented — transacting is MCP quote→confirm at bubblio_mcp_url, where the quote pins the exact price.
Exclusion matches the directory verbatim: unapproved, disabled, and unlisted doors never appear, hidden (off/orphaned) actions never appear, and no row carries an identifier that isn't already public in GET /agent/directory.
Cache-friendly by design: the body is rebuilt at most every ttl_seconds (generated_at says when; Cache-Control/Age say so on the wire). A transient read failure serves an honest empty items list — never a 500, never cached. Per-caller rate-capped; tripping it is a calm 429 with Retry-After.
Request
- Base URL: https://api.bubblio.dev
- URL: https://api.bubblio.dev/agent/feed.json
- Auth: none declared
Response
The feed.
Example response
{
"items": [
{
"price": "0.40 USD"
}
]
}Changes
No recorded changes to this operation across all 1 revision of this API.