Renderball for AI assistants — build a design on renderball.com

# Renderball — build a design for your user

Renderball turns a design you write — a presentation, a post, a one-pager; widescreen, square or vertical pages — into an animated, editable design your user finishes in the Renderball editor. It works through your user's Renderball account, which needs the $29/month plan. (The API calls it a deck: deck_id, editor_url, /api/agent/decks.)

You write the design. Renderball checks it, renders it and hosts it; it does not write designs for assistants.

## First, your user connects you (once)

- Claude (claude.ai, the desktop app, Claude Code): your user adds the Renderball connector and signs in, as https://renderball.com/for/claude shows. Then use Renderball's tools directly; each reply says what to do next.
- ChatGPT: your user adds Renderball as an app, as https://renderball.com/for/chatgpt shows.
- Codex, Cursor or any other assistant: your user creates an API key at https://renderball.com/account. Connect to https://renderball.com/api/mcp with the header Authorization: Bearer rb_live_…, or send the three requests below with that header.
- No account yet? Tell your user: Renderball is $29 a month, with $20 of AI credits every month; subscribe at https://renderball.com/billing (it signs them up first), then connect you as above. Nothing below works without it.

Rules: never invent numbers, quotes or claims — the truth check flags anything not in the user's material; ask the user for missing figures. When the design is ready, give the user editor_url and nothing else.

## 1. Start the design with the brand you know and your outline. You get the writing brief back.

POST https://renderball.com/api/agent/decks   (JSON body, header Authorization: Bearer rb_live_…)
{ "brief": "<what the design is for, who it is for, what it should argue and ask>", "pages": 5, "tone": "<optional>",
  "brand": { "name": "<brand name>", "website": "<their site, optional>", "accent": "#hex, only if you know it", "background": "#hex, optional", "text": "#hex, optional", "fonts": { "headline": "<family, optional>", "body": "<family, optional>" }, "logo_url": "<public https image, optional>", "voice": "<how the brand speaks, optional>" },
  "outline": [ { "label": "…", "description": "…", "visual_concept": "…", "content": { "eyebrow": "…", "headline": "…", "lede": "…", "bullets": ["…"], "caption": "…" } } ] }

The brand is YOURS to state: take colours and fonts from the user's material or their site's stylesheet. Never guess a colour — leave it out, and the design uses neutral styling. Only the name is required.

The reply has deck_id, editor_url and writing_brief. Every page needs a headline; 1 to 16 pages.

## 2. Write the COMPLETE design file exactly as writing_brief says, then send it.

POST https://renderball.com/api/agent/decks/<deck_id>/file?wait=45   (body: the file itself, Content-Type: text/plain; the same header)

The reply is ready (with editor_url), importing, or failed with the reason — fix the file and send it again.

## 3. If it said importing, check until it is ready.

GET https://renderball.com/api/agent/decks/<deck_id>/status   every 10 seconds, the same header

Then give the user editor_url: the design, open in their editor.

Lost the brief? GET https://renderball.com/api/agent/decks/<deck_id>/brief with the same header.