Studio Pass

Docs

Connect an assistant by signing in or with your key. Your key is on the Connection screen after you join.

Server URL

https://getstudiopass.com/api/mcp

Claude.ai

Setup steps for Claude.ai will be published here once they are confirmed in that app.

ChatGPT

Setup steps for ChatGPT will be published here once they are confirmed in that app.

Cursor

Setup steps for Cursor will be published here once they are confirmed in that app.

Claude Code

Setup steps for Claude Code will be published here once they are confirmed in that app.

Grok

Setup steps for Grok will be published here once they are confirmed in that app.

HTTP API

The same key works as a bearer token over HTTP. Image and voice wait up to 45 seconds and return the file; video returns 202 at once, and you read it back by id. The full description is at /openapi.json.

List models

curl https://getstudiopass.com/v1/models \
  -H "Authorization: Bearer sp_live_…"

Make an image

curl https://getstudiopass.com/v1/generations \
  -H "Authorization: Bearer sp_live_…" \
  -H "Content-Type: application/json" \
  -d '{"modality": "image", "prompt": "A lighthouse at dawn, watercolor"}'

Start a video, then read it back

curl https://getstudiopass.com/v1/generations \
  -H "Authorization: Bearer sp_live_…" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: 7c1d…" \
  -d '{"modality": "video", "model": "veo-3.1", "prompt": "Waves at dusk", "duration_seconds": 8}'

curl https://getstudiopass.com/v1/generations/GENERATION_ID \
  -H "Authorization: Bearer sp_live_…"

Work from a reference image

Image models edit or build on the reference; a video clip starts from it. Upload the image once (at most 4 MB, kept for 7 days), then pass its id. A public image URL works too, as reference_image_url.

curl https://getstudiopass.com/v1/uploads   -H "Authorization: Bearer sp_live_…"   --data-binary @product.jpg -H "Content-Type: image/jpeg"

curl https://getstudiopass.com/v1/generations   -H "Authorization: Bearer sp_live_…"   -H "Content-Type: application/json"   -d '{"modality": "video", "prompt": "The bottle turns slowly on a marble counter", "reference_image_id": "REFERENCE_IMAGE_ID"}'

To keep an image for good, save it to your library: add ?name=Product%20front to the upload, or use the References screen in your account. GET /v1/references lists saved images.

In a chat, attach the image and ask for what you want. ChatGPT passes the attached file to Studio Pass directly. Where a chat can't pass files, your assistant gives you a link to drop the image in, or uploads it itself if it can run commands.

Speech

curl https://getstudiopass.com/v1/generations \
  -H "Authorization: Bearer sp_live_…" \
  -H "Content-Type: application/json" \
  -d '{"modality": "voice", "text": "Welcome to the show."}'

Ask the right questions first

GET /v1/brief?modality=video (or image, voice) returns the questions worth asking before you generate: where it will be shown, how long, which voice, whether a real product must look exact. Each comes with this account's options, prices, and a suggested answer. Connected assistants get the same through get_creative_brief, and ask before their first generation unless you turn that off on the Models screen. Voiceovers take a voice and a delivery (expressive, natural, steady).

Model settings and cost limits

On the Models screen in your account you choose which models your key and connected apps may use, the default for each type, and a limit above which a generation needs your go-ahead. A request for a model that is off returns model_disabled. A request above your limit returns confirmation_required with the cost; repeat it with "confirm_credits" set to that cost to go ahead.

A response's status is running, succeeded, or failed. A finished file is at file_url for 30 days. Credits are charged only when a generation succeeds. Errors return { "error": { "code", "message" } }. See Models for ids, prices, and allowed lengths.