Skip to main content
POST /api/v2/storefront/inventory-sources/modular/feed Creates a real MODULAR_SOURCE for sellers who manage availability through a spreadsheet, export, or manual feed rather than a live ad-server integration. The source is created with the built-in avails-feed module and booking ledger. When execution.mode is omitted, it defaults to manual and also receives the provider-neutral manual execution module. Buyer media buys then create seller work items for upstream booking, creative handoff, and final reporting instead of requiring a provider-specific adapter. In a /mcp/v3 seller session, call open_page with {"page":"modular_source_setup"}. This opens the portable Add a modular source Task. After the seller reviews and confirms the form, the app calls create_feed_modular_inventory_source, which performs the same production write described on this page and opens the new source workspace. create_feed_modular_inventory_source is an app-only completion operation: an MCP host may expose it to the embedded Task, but it is not intended for the model to call directly. The same completion operation is available to this portable Task when a storefront MCP host renders it. The operation and its Task are listed only for sellers on Premium or Enterprise with the Merchandising profile. Basic sellers should use the standard inventory-feed setup available in their storefront instead. This endpoint does not attach arbitrary provider execution, reporting, creative, or OMS adapters. upstream_system details remain non-secret setup metadata until a matching provider module exists.

Request

Parameters

Do not send secrets in this request. API keys, login credentials, private keys, and service-account files must use the appropriate credential flow for the module or ad-server connection.

Response

201 Created with the new source id and modular runtime projection:
After creating the source, upload or paste avails into POST /api/v2/storefront/inventory-sources/{sourceId}/modular/avails-feed. Preview normalized rows first, then commit only after confirming row grain and net sellable capacity. If execution.mode is explicitly upstream_system or none, the response includes a NO_EXECUTION_MODULE warning. The source cannot finalize buyer bookings until a compatible trafficking module is attached. Because there is currently no self-service attach flow, choose manual before uploading availability unless an operator is provisioning that provider module.

Errors

  • 400 VALIDATION_ERROR — missing name or invalid sourceId.
  • 401 UNAUTHORIZED — missing or invalid API key.
  • 404 NOT_FOUND — the caller does not have a storefront.
  • 409 CONFLICT — another active source already uses the same sourceId.
See Errors for the full error contract.

Modular lifecycle

How feed, booking, HITL, and reporting stages fit together

Get modular readiness

Inspect modules and lifecycle status

Update module config

Update non-secret module setup

Inventory source tasks

All operations