{ "opencollection": "1.0.0", "info": { "name": "Shotstack API", "version": "1.0" }, "request": { "auth": { "type": "apikey", "apikey": { "key": "x-api-key", "value": "{{apiKey}}", "in": "header" } } }, "items": [ { "info": { "name": "Edit", "type": "folder" }, "items": [ { "info": { "name": "Queue a render", "type": "http" }, "http": { "method": "POST", "url": "https://api.shotstack.io/edit/v1/render", "body": { "type": "json", "data": "{\"timeline\":{\"tracks\":[]},\"output\":{\"format\":\"mp4\",\"resolution\":\"sd\"}}" } }, "docs": "Queue a video, image, or audio render from a JSON edit specification." }, { "info": { "name": "Get render status", "type": "http" }, "http": { "method": "GET", "url": "https://api.shotstack.io/edit/v1/render/{id}" }, "docs": "Retrieve the status, progress, and output URL of a render by ID." }, { "info": { "name": "Probe a media asset", "type": "http" }, "http": { "method": "GET", "url": "https://api.shotstack.io/edit/v1/probe/{url}" }, "docs": "Inspect media asset metadata using FFprobe (URL-encoded asset URL)." } ] }, { "info": { "name": "Templates", "type": "folder" }, "items": [ { "info": { "name": "Create a template", "type": "http" }, "http": { "method": "POST", "url": "https://api.shotstack.io/edit/v1/templates", "body": { "type": "json", "data": "{\"name\":\"My Template\",\"template\":{}}" } }, "docs": "Save an edit as a reusable template." }, { "info": { "name": "List templates", "type": "http" }, "http": { "method": "GET", "url": "https://api.shotstack.io/edit/v1/templates" }, "docs": "List all templates for the authenticated account." }, { "info": { "name": "Get a template", "type": "http" }, "http": { "method": "GET", "url": "https://api.shotstack.io/edit/v1/templates/{id}" }, "docs": "Retrieve a specific template by ID." }, { "info": { "name": "Update a template", "type": "http" }, "http": { "method": "PUT", "url": "https://api.shotstack.io/edit/v1/templates/{id}", "body": { "type": "json", "data": "{\"name\":\"My Template\",\"template\":{}}" } }, "docs": "Update an existing template's name and edit." }, { "info": { "name": "Delete a template", "type": "http" }, "http": { "method": "DELETE", "url": "https://api.shotstack.io/edit/v1/templates/{id}" }, "docs": "Delete a template by ID." }, { "info": { "name": "Render a template", "type": "http" }, "http": { "method": "POST", "url": "https://api.shotstack.io/edit/v1/templates/render", "body": { "type": "json", "data": "{\"id\":\"\",\"merge\":[]}" } }, "docs": "Render an asset from a template with optional merge fields." } ] }, { "info": { "name": "Ingest", "type": "folder" }, "items": [ { "info": { "name": "Ingest a source from a URL", "type": "http" }, "http": { "method": "POST", "url": "https://api.shotstack.io/ingest/v1/sources", "body": { "type": "json", "data": "{\"url\":\"https://example.com/video.mp4\"}" } }, "docs": "Queue a source file (video, image, audio, font) to be fetched, stored, and transformed." }, { "info": { "name": "List sources", "type": "http" }, "http": { "method": "GET", "url": "https://api.shotstack.io/ingest/v1/sources" }, "docs": "List ingested source files." }, { "info": { "name": "Get a source", "type": "http" }, "http": { "method": "GET", "url": "https://api.shotstack.io/ingest/v1/sources/{id}" }, "docs": "Retrieve a specific source file by ID." }, { "info": { "name": "Delete a source", "type": "http" }, "http": { "method": "DELETE", "url": "https://api.shotstack.io/ingest/v1/sources/{id}" }, "docs": "Delete an ingested source file by ID." }, { "info": { "name": "Request a direct upload", "type": "http" }, "http": { "method": "POST", "url": "https://api.shotstack.io/ingest/v1/upload" }, "docs": "Request a signed URL to upload a source file directly to Shotstack storage." } ] }, { "info": { "name": "Serve", "type": "folder" }, "items": [ { "info": { "name": "Get an asset", "type": "http" }, "http": { "method": "GET", "url": "https://api.shotstack.io/serve/v1/assets/{id}" }, "docs": "Retrieve a hosted asset's details and CDN URL by asset ID." }, { "info": { "name": "Delete an asset", "type": "http" }, "http": { "method": "DELETE", "url": "https://api.shotstack.io/serve/v1/assets/{id}" }, "docs": "Delete a hosted asset by asset ID." }, { "info": { "name": "Get assets by render ID", "type": "http" }, "http": { "method": "GET", "url": "https://api.shotstack.io/serve/v1/assets/render/{id}" }, "docs": "Retrieve all assets (video, thumbnail, poster) for a render ID." }, { "info": { "name": "Transfer an asset", "type": "http" }, "http": { "method": "POST", "url": "https://api.shotstack.io/serve/v1/assets", "body": { "type": "json", "data": "{\"url\":\"https://example.com/file.mp4\",\"destinations\":[{\"provider\":\"s3\"}]}" } }, "docs": "Transfer a file from a URL to one or more hosting destinations." } ] }, { "info": { "name": "Create", "type": "folder" }, "items": [ { "info": { "name": "Generate an AI asset", "type": "http" }, "http": { "method": "POST", "url": "https://api.shotstack.io/create/v1/assets", "body": { "type": "json", "data": "{\"provider\":\"shotstack\",\"options\":{\"type\":\"text-to-speech\",\"text\":\"Hello from Shotstack\"}}" } }, "docs": "Generate an AI asset (text-to-speech, text-to-image, image-to-video, text generation)." }, { "info": { "name": "Get a generated asset", "type": "http" }, "http": { "method": "GET", "url": "https://api.shotstack.io/create/v1/assets/{id}" }, "docs": "Retrieve the status and URL of a generated AI asset by ID." } ] } ] }