Integrations
Calling Sume from automation platforms, serverless functions, agent frameworks, and MCP clients. Each uses plain HTTPS or remote MCP, not a connector.

Cloud Run 504 after 300 seconds: return 202 for Sume video jobs
Cloud Run ends a request after 5 minutes by default with a 504. Don't wait for a render in the request: submit to Sume, return 202, then poll or use a webhook.

Cloud Tasks settings for Sume video jobs: pace submits, retry 429
Cloud Tasks defaults to 500 dispatches a second, far above a Pro plan's 24 accepted jobs. Pace submits and retry 429 queue_full with the same Idempotency-Key.

Linktree video background 50 MB limit: bitrate budget by length
Linktree video backgrounds loop with no time limit but a 50 MB cap. A 15-second loop can average 26.7 Mbps, a 60-second one 6.7 Mbps. Table and trim steps.

Linktree video background 9:16 or 16:9: make both from one clip
Linktree's page pairs 9:16 with landscape and 16:9 with portrait. Cut both ratios from one Sume clip with video filter crop fractions: 0.3164 wide, x 0.3418.

Linktree video background is muted: drop the audio with trim
Linktree plays a video background on a loop with the sound muted, so audio only adds bytes. Send audio set to drop on Sume video trim, then probe has_audio.

Can a MAI-Voice-2.1 WAV join a Sume timeline? Hosted audio only
Sume timeline audio joins only Sume-hosted files, and the import route takes TikTok or Instagram URLs, so a MAI-Voice-2.1 file stays outside. What to do.

crawl_feed in Sume MCP: top-viewed posts are ranked within 3 pages
crawl_feed reads recent or top-viewed items from a known Instagram or TikTok account. It returns up to 24 items from 3 pages, so play_count ranks a sample only.

crawl_media in Sume MCP: one social URL in, expiring media URLs out
crawl_media resolves one public Instagram or TikTok URL to a permalink, counts and image or video candidates. Those URLs may expire, so import before you reuse.

crawl_profile in Sume MCP: Instagram or TikTok handle to counts
Use crawl_profile to turn a public Instagram or TikTok handle into identity and counts. It is read-only, unbilled discovery, and a missing count is unknown.

Odysee 16 GB upload limit vs a 1800-second Sume source
Odysee caps uploads at 16 GB. A 1800-second Sume source would need about 71 Mbps to reach it. Worked sizes at 8, 25 and 50 Mbps, with a Python check.

Odysee 8 Mbps bitrate warning and Sume's missing bitrate field
Odysee warns above 8 Mbps and suggests 720p if 1080p at 30 fps runs high. Sume trim has no bitrate field, so use width, height and fps, then probe the average.

Odysee needs H264 and AAC MP4: what Sume trim exact outputs
Odysee wants MP4 with H264 video and AAC audio, or the video has no sound. Sume trim in exact mode re-encodes to libx264 with AAC audio. Check it with a probe.

Snapchat monetization advice: closed captions, 30 s, and Sume
Snapchat's monetization page says videos need 30 seconds for revenue and recommends closed captions. Burn captions with Sume video captions at $0.20 per job.

Snapchat Spotlight Post button needs 5 seconds: probe and trim
Snapchat says the Post button for Spotlight appears when a video is at least 5 seconds. Probe a clip's duration with Sume, trim the dead lead-in, and re-check.

Truth Social 15-minute video limit and Sume's 900-second trim cap
Truth Social accepts videos up to 15 minutes and 450 MB. Sume video trim outputs top out at 900 seconds, so one trim job fits. How to cut a longer source.

Truth Social 450 MB video limit: average bitrate for 15 minutes
A 450 MB cap over a 900-second clip leaves about 4 Mbps for video plus audio. Worked ceilings for 5, 10 and 15 minutes, and a Python check before upload.

YouTube's Shorts help page says vertical, not 9:16: what to render
YouTube's Shorts help page states 3 minutes, vertical uploads and a 1080p maximum, but names no ratio. Render 1080x1920 with Sume Timeline 1.0 and probe it.

Sume MCP allow_write and allow_paid: accepted, not required, no bypass
Old agent prompts still send allow_write and allow_paid to Sume MCP. The server accepts both, but only the OAuth scope or an API key grants access.

Sume MCP OAuth opens a consent page on mcp.sume.com, not app.sume.com
Hosted Sume MCP sign-in redirects to a consent page on the MCP host with Read locked on and a Write toggle off. Do not point clients at app.sume.com or www.

crawl_site on Sume MCP is unbilled but needs Write
crawl_site starts a multi-page crawl. It is unbilled yet a write tool, so read-only OAuth cannot call it. Follow it with jobs_wait and crawl_get on one id.

get_workflow_instructions and models_explore are not on Sume's MCP
Sume's hosted MCP has no get_workflow_instructions, models_explore, media_import_url or remove_background. Use tools_list, rmbg_create and media-imports_create.

MCP OAuth invalid_grant: four causes at Sume's token endpoint
The Sume MCP token endpoint answers invalid_grant with one of five messages. They group into four causes: reuse, expiry, mismatch and a bad PKCE verifier.

PKCE plain is rejected: Sume's MCP OAuth accepts S256 only
A remote MCP client that sends code_challenge_method=plain gets invalid_request from Sume. The server advertises S256 only, so set it and keep the verifier.

Cursor sends refresh_token at MCP registration: Sume ignores it
Sume's /oauth/register accepts refresh_token in grant_types but drops it and keeps authorization_code. The access token lasts one hour; then sign in again.

MCP dynamic client registration at Sume: 10 redirect URIs, no secret
Sume's /oauth/register takes at most 10 redirect_uris, requires auth method none and returns invalid_redirect_uri for a bad entry. See what each error means.

POST /oauth/revoke on Sume MCP: 200 even for a token it never saw
Revoke a Sume MCP OAuth access token with POST /oauth/revoke. It answers 200 with an empty body, also when the token is unknown, so check by calling the API.

Sonnet 5.5 on AWS, Google Cloud or Azure: one Sume key, one wallet
Sonnet 5.5 is listed on four platforms. The Sume side does not change by cloud: the same workspace key, wallet and spend cap apply wherever the agent runs.

OpenAI remote MCP does not store authorization: resend your Sume key
OpenAI's remote MCP tool does not keep the authorization value, so every Responses call must carry it. What that means for a Sume key and how to rotate it.

OpenAI remote MCP is third-party: what a Sume tool call sends
OpenAI says remote MCP servers are third-party services with their own retention. Here is what a Sume tool call carries, and what to keep out of its arguments.

TikTok import get_transcript: TikTok only, plan the Instagram fallback
get_transcript on media-imports is TikTok only; Instagram imports return no transcript. Fallback: video_inspect transcribe at $0.01 a minute.

TruGen and Avatario avatar IDs in LiveKit vs a Sume avatar handle
In LiveKit, TruGen and Avatario pick a face with an avatar_id. Sume uses a stable avatar_handle you create yourself. Here is how they differ.

BigCommerce blocklists below 90% success: keep Sume callbacks quick
BigCommerce blocks a domain for 3 minutes under 90% success in 2 minutes. Ack Sume job webhooks inside its 10s timeout, then queue the work.

BigCommerce deactivates webhooks after 48 hours: poll Sume jobs
BigCommerce deactivates a webhook once retries run out after about 48 hours. Your Sume jobs keep finishing, so reconcile with status polls and the job list.

BigCommerce sends only the order ID: fetch it, then render a Sume clip
BigCommerce order webhooks carry a scope and an ID, not the order. Ack, fetch the order yourself, then submit POST /v1/videos to Sume with a stable key.

Make's webhook queue holds 667 items per 10,000 credits: plan for Sume
A Make webhook queue holds 667 items per 10,000 licensed credits, capped at 10,000, and answers 400 when full. Sume retries 10 times, so size the queue first.

Make 'Process data in order' with Sume job events: what stays ordered
Make's Process data in order runs one execution at a time. Sume sends only terminal job events with no ordering promise, so dedupe on job_id.

Make takes 300 webhook requests per 10 seconds: fan in a Sume bulk run
Make returns 429 above 300 webhook requests per 10 seconds. A Sume bulk run holds up to 100 runs and has no queue webhook, so each child webhook_url fans in.

n8n webhook auth is Basic, Header or JWT: verify Sume's HMAC yourself
n8n's Webhook node offers Basic, Header and JWT auth, none of which checks Sume's HMAC. Verify sume-v1 over timestamp.raw_body in code, 300 second window.

n8n video workflow: Respond immediately vs Sume's 30-second sync wait
In n8n, use Respond immediately and let Sume call back. Sume's sync mode waits at most 30 seconds, too short for most video jobs, so avoid the last-node wait.

Which account pays: fal's Active MCP account vs a Sume key
fal's MCP sends credits to the Active MCP account you choose. On Sume the API key or OAuth session selects the workspace, and no tool takes a workspace id.

Trim a Sume connection to 3 media tools with allowed_tools
OpenAI's MCP tool accepts allowed_tools and require_approval. Limiting a Sume connection to generate_video, jobs_wait and jobs_result keeps the tool list short.

OpenAI remote MCP does not store authorization: resend a Sume key
OpenAI does not store the MCP authorization value, so resend it on every request. Sume accepts a bearer API key or OAuth; keep either one server-side only.

Zapier MCP bills 2 tasks per success; retry Sume tools with one key
Zapier MCP charges 2 tasks per successful call and nothing for failures. A paid Sume tool needs an idempotency_key, and a repeat with the same key is safe.

Claude's MCP connector is not ZDR-eligible; what that means for Sume
Claude's MCP connector is not ZDR eligible and is unavailable on Bedrock and Google Cloud. For those cases, call Sume's REST API from your own backend.

Shopify storefront MCP moved to /api/ucp/mcp: update the URL, add Sume
Shopify's storefront MCP now lives at https://{shop}/api/ucp/mcp, not /api/mcp. Update your agent, then add Sume at mcp.sume.com/mcp for product video.

Shopify UCP needs an agent profile per call: where a Sume clip fits
Shopify's UCP storefront MCP needs an agent profile on every request. A product clip belongs after get_product, as an async Sume job the agent collects later.

X media upload processing_info states: poll until succeeded
After FINALIZE on the X API v2, processing_info moves from pending to in_progress to succeeded or failed. Poll using check_after_secs, then post the Sume video.

GPT-6.1 Sol function calling to start a Sume Agent Completion safely
Expose one function that starts an Agent Completion. Let GPT-6.1 Sol fill instruction and input, and keep the spend cap and idempotency key out of its args.