Skip to content

Transports (REST / MCP / A2A)

yumipop is agent-first. The same trading tasks — get_products, create_media_buy, get_media_buy_delivery — are exposed over three transports, all backed by the same auth, mandate, scope, QPS, and owner-scoping guards.

The stable, versioned surface, described by /v1/openapi.json and rendered in the API reference. Bearer auth.

Terminal window
curl -s https://api.yumipop.com/v1/products -H "authorization: Bearer $YP"

Model Context Protocol (JSON-RPC). Use tools/call with a tool name + arguments.

Terminal window
curl -s -X POST https://api.yumipop.com/mcp \
-H "authorization: Bearer $YP" -H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"create_media_buy","arguments":{"product_ids":["ctv-video-15"],"budget":100}}}'

The result payload is in result.content[0].text (JSON string). yumipop is advertised in the agent card and llms.txt so a buying agent can discover it.

Agent-to-Agent (JSON-RPC). message/send runs a skill; the result comes back as an A2A Task with an artifact. Streaming (message/stream) and tasks/get are supported. Protocol failures return JSON-RPC errors; business failures come back as a failed Task.

  • /.well-known/adagents.json — authorizes the AdCP tasks,
  • /.well-known/agent.json — the A2A agent card (transports advertised),
  • /llms.txt — a plain-text guide for LLMs.

A buying agent can discover + authorize yumipop without a human onboarding it.

Couldn't find what you needed?