OfflineCreator Studio
AI Router · CLI · MCPCheapest eligible quotes before you create

0–90 days · live (authenticated)

Ask for the outcome.

An external agent sends the creative objective, inputs, channel, budget, quality priority, and deadline — not a model id. Authenticated plan, quote, and execute use that schema today. Named-model MCP remains available when the agent already knows the catalog. This page is a walkthrough, not a charge path.

Customer asks
Outcome + constraints
Studio decides
How to fulfill
Status
Live · authenticated

Illustrative intent · live schema is POST /api/v1/outcomes

{
  "objective": "Create a direct-response ad for this shoe",
  "inputs": [
    "product_photo.jpg",
    "brand_guide.pdf"
  ],
  "channels": [
    "tiktok",
    "instagram_reels"
  ],
  "duration_sec": 15,
  "budget_usd": 2,
  "quality": "high",
  "deadline_sec": 90,
  "must": [
    "9:16",
    "no logo distortion"
  ],
  "avoid": [
    "text over product"
  ],
  "output": "1080x1920 mp4"
}
  • Media outcome15s vertical product ad
  • Workloadvertical-product-ad
  • Budget ceiling$2.00 USD
  • Quality priorityhigh
  • Latency limit90 seconds
  • Output9:16

Normalize the request before routing

The intent schema is live on authenticated POST /api/v1/outcomes. This page does not execute or charge.

  1. 01

    Capture the objective

    The agent states what media must exist when the job is done — a 15-second vertical product ad, an ecommerce hero set, an image-to-video clip — not which catalog id to call.

  2. 02

    Lock hard constraints

    Budget, latency ceiling, output shape, and must/avoid rules become the eligibility envelope. A route that cannot meet them is not scored.

  3. 03

    Keep the request model-agnostic

    Intent is a separate contract from execution. The planner, router, and payment adapter should be able to change underneath without rewriting the agent’s request.

  4. 04

    Preserve the raw fields

    Store the original objective and constraints with the job identity so later evaluation can judge the output against what was asked, not against a generic quality score.

Preview plan · POST /api/v1/outcomes/plan · this page does not execute

  • Customer asksOutcome + constraints

    Objective, budget, quality, latency, and policy — not a model id.

  • Studio decidesHow to fulfill

    Planning, routing, quoting, and evaluation sit behind the schema.

  • StatusLive · authenticated

    API key or MCP OAuth. Requests without one get a 404 NOT_LIVE error.

This page does not charge.

This page never opens Stripe Checkout, uses a wallet, or pays sellers. Authenticated outcome execute is the live charge path for agents. Named-model MCP, CLI, and /ai-router remain available.

  • Examples only

    Examples on this page are computed from sample intents and illustrative data. This page does not start a generation or call a model provider.

  • No card checkout here

    People buy plans and credit packs through Stripe Checkout on /pricing. These plan pages never open Checkout or ask for card details.

  • No wallet payments here

    Agents that pay in USDC over x402 do it from their own wallet through the stdio MCP server or the CLI. These pages never ask for or hold a wallet key. Setup lives on /x402.

Plan FAQ

Is this intent schema live on MCP, CLI, or REST?

Yes, for callers with an API key or MCP OAuth. POST /api/v1/outcomes/plan and MCP plan_outcome accept the schema; requests without a credential get a 404 NOT_LIVE error. Named-model quote_generation remains the model-id path.

Why not start from a model id?

Model ids force the agent to research the catalog. The plan is to let the agent describe the media outcome and let OfflineCreator choose the path, as long as the path stays inside budget, latency, and policy.

The agent says what. The router says how.

Intent is the contract. Routing, quoting, and payment stay replaceable underneath. Authenticated agents already send this schema.