{"name":"studio","stage":"ga","description":"Package studio is Hanzo Studio's workflow backend: every creation — an image, a poster, a document, a deck, a type system, a 3D model, an ad, a film, a voice, a song — is a run of a graph of steps that the person who started it owns.","operations":[{"operationId":"get_studio_brands","method":"GET","href":"/v1/studio/brands","summary":"Lists the brands you may read — palettes and type systems as design tokens."},{"operationId":"post_studio_brands","method":"POST","href":"/v1/studio/brands","summary":"Saves a brand: its tokens in the W3C design-token format (color, font, type, space, radius groups) and up to 16 logo items."},{"operationId":"delete_studio_brands_by_id","method":"DELETE","href":"/v1/studio/brands/{id}","summary":"Deletes one of your brands."},{"operationId":"get_studio_brands_by_id","method":"GET","href":"/v1/studio/brands/{id}","summary":"Reads one brand you may read."},{"operationId":"patch_studio_brands_by_id","method":"PATCH","href":"/v1/studio/brands/{id}","summary":"Changes one of your brands; absent fields stay as they are."},{"operationId":"post_studio_chat","method":"POST","href":"/v1/studio/chat","summary":"One chat turn that plans and launches runs, streamed"},{"operationId":"get_studio_documents","method":"GET","href":"/v1/studio/documents","summary":"Lists the documents and decks you may read, most recently changed first."},{"operationId":"post_studio_documents","method":"POST","href":"/v1/studio/documents","summary":"Writes a document (kind doc, its IR blocks) or a deck (kind deck, its slides)."},{"operationId":"delete_studio_documents_by_id","method":"DELETE","href":"/v1/studio/documents/{id}","summary":"Deletes one of your documents."},{"operationId":"get_studio_documents_by_id","method":"GET","href":"/v1/studio/documents/{id}","summary":"Reads one document you may read."},{"operationId":"patch_studio_documents_by_id","method":"PATCH","href":"/v1/studio/documents/{id}","summary":"Changes one of your documents; absent fields stay as they are."},{"operationId":"post_studio_estimate","method":"POST","href":"/v1/studio/estimate","summary":"Prices a run without starting it: the estimate POST /v1/studio/runs would reserve, step by step."},{"operationId":"get_studio_flows","method":"GET","href":"/v1/studio/flows","summary":"Lists the flows you may read, most recently changed first."},{"operationId":"post_studio_flows","method":"POST","href":"/v1/studio/flows","summary":"Saves a graph as a flow of yours."},{"operationId":"delete_studio_flows_by_id","method":"DELETE","href":"/v1/studio/flows/{id}","summary":"Deletes one of your flows."},{"operationId":"get_studio_flows_by_id","method":"GET","href":"/v1/studio/flows/{id}","summary":"Reads one flow you may read."},{"operationId":"patch_studio_flows_by_id","method":"PATCH","href":"/v1/studio/flows/{id}","summary":"Changes one of your flows; absent fields stay as they are."},{"operationId":"get_studio_gpus","method":"GET","href":"/v1/studio/gpus","summary":"Lists the GPUs your org has linked with `hanzo link` that can take a studio.render step, each with whether it is free now."},{"operationId":"get_studio_runs","method":"GET","href":"/v1/studio/runs","summary":"Lists the runs you may read — your own and those your org shares — newest first."},{"operationId":"post_studio_runs","method":"POST","href":"/v1/studio/runs","summary":"Starts a run: name exactly one of template, flow or graph, with the input its inputs schema asks for."},{"operationId":"get_studio_runs_by_id","method":"GET","href":"/v1/studio/runs/{id}","summary":"Reads one run: its graph, its input, every step's state, the assets it made and what it cost."},{"operationId":"patch_studio_runs_by_id","method":"PATCH","href":"/v1/studio/runs/{id}","summary":"Renames or shares one of your runs."},{"operationId":"post_studio_runs_by_id_cancel","method":"POST","href":"/v1/studio/runs/{id}/cancel","summary":"Cancels one of your runs: a step in flight is told to stop, nothing new starts, and the reservation settles to what finished steps cost."},{"operationId":"get_studio_runs_by_id_events","method":"GET","href":"/v1/studio/runs/{id}/events","summary":"Stream a run's progress as Server-Sent Events"},{"operationId":"post_studio_runs_by_id_retry","method":"POST","href":"/v1/studio/runs/{id}/retry","summary":"Resumes one of your runs that failed or was cancelled: the steps that did not succeed run again in the same run, and the steps that did keep their outputs and are neither run nor charged again."},{"operationId":"get_studio_runs_by_id_versions","method":"GET","href":"/v1/studio/runs/{id}/versions","summary":"Lists every version of a creation you may read — the runs in this run's lineage — oldest (version 1) first."},{"operationId":"get_studio_templates","method":"GET","href":"/v1/studio/templates","summary":"Lists templates: the public catalog (org empty) first, then your org's own that you may read."},{"operationId":"post_studio_templates","method":"POST","href":"/v1/studio/templates","summary":"Saves a template to your org: a graph and the inputs schema its runs are started with."},{"operationId":"delete_studio_templates_by_id","method":"DELETE","href":"/v1/studio/templates/{id}","summary":"Deletes one of your templates."},{"operationId":"get_studio_templates_by_id","method":"GET","href":"/v1/studio/templates/{id}","summary":"Reads one template: a catalog slug or one of your org's templates you may read."},{"operationId":"patch_studio_templates_by_id","method":"PATCH","href":"/v1/studio/templates/{id}","summary":"Changes one of your templates; absent fields stay as they are."},{"operationId":"get_studio_threads","method":"GET","href":"/v1/studio/threads","summary":"Lists your chat threads, most recent first."},{"operationId":"delete_studio_threads_by_id","method":"DELETE","href":"/v1/studio/threads/{id}","summary":"Deletes one of your threads."},{"operationId":"get_studio_threads_by_id","method":"GET","href":"/v1/studio/threads/{id}","summary":"Reads one of your threads and its messages, oldest first."}],"_links":{"describedby":{"href":"/v1/openapi.json?capability=studio"},"self":{"href":"/v1/studio"},"up":{"href":"/v1"}}}