[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-runway-rw-recipe-full-setup":3,"mdc--42yedc-key":29,"related-repo-runway-rw-recipe-full-setup":736,"related-org-runway-rw-recipe-full-setup":833},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":12,"stars":18,"repoUrl":19,"updatedAt":20,"license":21,"forks":22,"topics":23,"repo":24,"sourceUrl":27,"mdContent":28},"rw-recipe-full-setup","set up the Runway API end-to-end","Complete Runway API setup: check compatibility, configure API key, and integrate generation endpoints",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},"runway","Runway","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Frunway.png","runwayml",[13,15],{"name":9,"slug":8,"type":14},"tag",{"name":16,"slug":17,"type":14},"API Development","api-development",57,"https:\u002F\u002Fgithub.com\u002Frunwayml\u002Fskills","2026-04-08T04:42:02.506426",null,15,[],{"repoUrl":19,"stars":18,"forks":22,"topics":25,"description":26},[],"for Runway coding agent skills","https:\u002F\u002Fgithub.com\u002Frunwayml\u002Fskills\u002Ftree\u002FHEAD\u002Fskills\u002Frw-recipe-full-setup","---\nname: rw-recipe-full-setup\ndescription: \"Complete Runway API setup: check compatibility, configure API key, and integrate generation endpoints\"\nuser-invocable: true\nallowed-tools: Read, Grep, Glob, Edit, Write, Bash(node --version), Bash(python3 --version), Bash(npm install *), Bash(pip install *), Bash(pip3 install *)\n---\n\n# Full Runway API Setup\n\n> **PREREQUISITE:** Run `+rw-check-compatibility` first to ensure the project has server-side capability.\n\nThis recipe guides a user through the complete process of integrating Runway's public API into their project. It chains together the compatibility check, API key setup, and API integration skills.\n\n## Workflow\n\n### Phase 1: Compatibility Check\n\nUse `+rw-check-compatibility` to analyze the user's project.\n\n1. Identify the project type (Node.js, Python, etc.)\n2. Verify server-side capability\n3. Check runtime version compatibility\n4. Look for existing Runway SDK installation\n\n**If the project is INCOMPATIBLE**, stop and explain the options:\n\n- Add a backend (Express, FastAPI, etc.)\n- Use a fullstack framework (Next.js, SvelteKit, Nuxt, Remix)\n- Add serverless functions (Vercel Functions, AWS Lambda)\n- Create a separate backend service\n\n**If NEEDS CHANGES**, help the user make the required changes before proceeding.\n\n**If COMPATIBLE**, proceed to Phase 2.\n\n### Phase 2: API Key Setup\n\nUse `+rw-setup-api-key` to configure credentials.\n\n1. Direct the user to https:\u002F\u002Fdev.runwayml.com\u002F to create an account and API key\n2. Install the appropriate SDK (`@runwayml\u002Fsdk` for Node.js, `runwayml` for Python)\n3. Configure the `RUNWAYML_API_SECRET` environment variable\n4. Update `.gitignore` to exclude `.env`\n5. Remind about credit purchase requirement ($10 minimum)\n\n**Wait for the user to confirm** they have their API key before proceeding.\n\n### Phase 3: Determine What to Integrate\n\nAsk the user what they want to build. Based on their response, use the appropriate integration skill:\n\n| User wants...                   | Skill to use                                                                    |\n| ------------------------------- | ------------------------------------------------------------------------------- |\n| Generate videos from text       | `+rw-integrate-video` (text-to-video)                                              |\n| Animate images into video       | `+rw-integrate-video` (image-to-video) + `+rw-integrate-uploads` if local files       |\n| Edit\u002Ftransform existing videos  | `+rw-integrate-video` (video-to-video) + `+rw-integrate-uploads`                      |\n| Generate images from text       | `+rw-integrate-image`                                                              |\n| Generate images with references | `+rw-integrate-image` + `+rw-integrate-uploads` if local refs                         |\n| Text-to-speech                  | `+rw-integrate-audio`                                                              |\n| Sound effects                   | `+rw-integrate-audio`                                                              |\n| Voice isolation\u002Fdubbing         | `+rw-integrate-audio` + `+rw-integrate-uploads`                                       |\n| Real-time conversational avatar | `+rw-integrate-characters` + `+rw-integrate-character-embed` (React UI)               |\n| Avatar with domain knowledge    | `+rw-integrate-characters` + `+rw-integrate-documents` + `+rw-integrate-character-embed` |\n| Multiple capabilities           | Integrate each one, sharing the same client instance                            |\n\n### Phase 4: Write the Integration Code\n\nBased on the user's framework and needs:\n\n1. **Create the API route\u002Fhandler** — server-side endpoint that calls Runway\n2. **Add upload handling** if the user needs to accept files from their users\n3. **Add error handling** — catch and handle task failures\n4. **Handle output storage** — remind user that output URLs expire in 24-48 hours\n\n### Phase 5: Test and Verify\n\nHelp the user:\n\n1. Run a test generation to verify everything works\n2. Check for common issues (missing env var, insufficient credits, wrong model)\n3. Confirm output is accessible\n\n## Decision Tree for Upload Requirements\n\nWhen the user's workflow involves images or videos as input:\n\n```\nDoes the input come from a public HTTPS URL?\n├── YES → Pass the URL directly to the API\n└── NO → Is it a local file or user-uploaded file?\n    ├── YES → Use +rw-integrate-uploads to upload first, then pass runway:\u002F\u002F URI\n    └── NO → Is it small enough for a data URI? (\u003C 5MB image, \u003C 16MB video)\n        ├── YES → Convert to base64 data URI\n        └── NO → Use +rw-integrate-uploads\n```\n\n## Important Reminders\n\n- **Never expose the API key in client-side code.** All API calls must happen server-side.\n- **Output URLs expire.** Always download and store generated content.\n- **Credits are required.** The API won't work without prepaid credits.\n- **Rate limits exist.** Rate limits exist. You should always check what is the rate limit before attempting concurrent generations.\n- **Content moderation applies** to both inputs and outputs. Safety-flagged inputs are non-refundable.\n- **Be cost-conscious.** Help users pick the right model for their budget. Credit cost can be found on https:\u002F\u002Fdocs.dev.runwayml.com\u002Fguides\u002Fpricing\u002F\n",{"data":30,"body":33},{"name":4,"description":6,"user-invocable":31,"allowed-tools":32},true,"Read, Grep, Glob, Edit, Write, Bash(node --version), Bash(python3 --version), Bash(npm install *), Bash(pip install *), Bash(pip3 install *)",{"type":34,"children":35},"root",[36,45,70,75,82,89,101,126,136,160,170,180,186,198,273,283,289,294,555,561,566,609,615,620,638,644,649,661,667],{"type":37,"tag":38,"props":39,"children":41},"element","h1",{"id":40},"full-runway-api-setup",[42],{"type":43,"value":44},"text","Full Runway API Setup",{"type":37,"tag":46,"props":47,"children":48},"blockquote",{},[49],{"type":37,"tag":50,"props":51,"children":52},"p",{},[53,59,61,68],{"type":37,"tag":54,"props":55,"children":56},"strong",{},[57],{"type":43,"value":58},"PREREQUISITE:",{"type":43,"value":60}," Run ",{"type":37,"tag":62,"props":63,"children":65},"code",{"className":64},[],[66],{"type":43,"value":67},"+rw-check-compatibility",{"type":43,"value":69}," first to ensure the project has server-side capability.",{"type":37,"tag":50,"props":71,"children":72},{},[73],{"type":43,"value":74},"This recipe guides a user through the complete process of integrating Runway's public API into their project. It chains together the compatibility check, API key setup, and API integration skills.",{"type":37,"tag":76,"props":77,"children":79},"h2",{"id":78},"workflow",[80],{"type":43,"value":81},"Workflow",{"type":37,"tag":83,"props":84,"children":86},"h3",{"id":85},"phase-1-compatibility-check",[87],{"type":43,"value":88},"Phase 1: Compatibility Check",{"type":37,"tag":50,"props":90,"children":91},{},[92,94,99],{"type":43,"value":93},"Use ",{"type":37,"tag":62,"props":95,"children":97},{"className":96},[],[98],{"type":43,"value":67},{"type":43,"value":100}," to analyze the user's project.",{"type":37,"tag":102,"props":103,"children":104},"ol",{},[105,111,116,121],{"type":37,"tag":106,"props":107,"children":108},"li",{},[109],{"type":43,"value":110},"Identify the project type (Node.js, Python, etc.)",{"type":37,"tag":106,"props":112,"children":113},{},[114],{"type":43,"value":115},"Verify server-side capability",{"type":37,"tag":106,"props":117,"children":118},{},[119],{"type":43,"value":120},"Check runtime version compatibility",{"type":37,"tag":106,"props":122,"children":123},{},[124],{"type":43,"value":125},"Look for existing Runway SDK installation",{"type":37,"tag":50,"props":127,"children":128},{},[129,134],{"type":37,"tag":54,"props":130,"children":131},{},[132],{"type":43,"value":133},"If the project is INCOMPATIBLE",{"type":43,"value":135},", stop and explain the options:",{"type":37,"tag":137,"props":138,"children":139},"ul",{},[140,145,150,155],{"type":37,"tag":106,"props":141,"children":142},{},[143],{"type":43,"value":144},"Add a backend (Express, FastAPI, etc.)",{"type":37,"tag":106,"props":146,"children":147},{},[148],{"type":43,"value":149},"Use a fullstack framework (Next.js, SvelteKit, Nuxt, Remix)",{"type":37,"tag":106,"props":151,"children":152},{},[153],{"type":43,"value":154},"Add serverless functions (Vercel Functions, AWS Lambda)",{"type":37,"tag":106,"props":156,"children":157},{},[158],{"type":43,"value":159},"Create a separate backend service",{"type":37,"tag":50,"props":161,"children":162},{},[163,168],{"type":37,"tag":54,"props":164,"children":165},{},[166],{"type":43,"value":167},"If NEEDS CHANGES",{"type":43,"value":169},", help the user make the required changes before proceeding.",{"type":37,"tag":50,"props":171,"children":172},{},[173,178],{"type":37,"tag":54,"props":174,"children":175},{},[176],{"type":43,"value":177},"If COMPATIBLE",{"type":43,"value":179},", proceed to Phase 2.",{"type":37,"tag":83,"props":181,"children":183},{"id":182},"phase-2-api-key-setup",[184],{"type":43,"value":185},"Phase 2: API Key Setup",{"type":37,"tag":50,"props":187,"children":188},{},[189,190,196],{"type":43,"value":93},{"type":37,"tag":62,"props":191,"children":193},{"className":192},[],[194],{"type":43,"value":195},"+rw-setup-api-key",{"type":43,"value":197}," to configure credentials.",{"type":37,"tag":102,"props":199,"children":200},{},[201,216,236,249,268],{"type":37,"tag":106,"props":202,"children":203},{},[204,206,214],{"type":43,"value":205},"Direct the user to ",{"type":37,"tag":207,"props":208,"children":212},"a",{"href":209,"rel":210},"https:\u002F\u002Fdev.runwayml.com\u002F",[211],"nofollow",[213],{"type":43,"value":209},{"type":43,"value":215}," to create an account and API key",{"type":37,"tag":106,"props":217,"children":218},{},[219,221,227,229,234],{"type":43,"value":220},"Install the appropriate SDK (",{"type":37,"tag":62,"props":222,"children":224},{"className":223},[],[225],{"type":43,"value":226},"@runwayml\u002Fsdk",{"type":43,"value":228}," for Node.js, ",{"type":37,"tag":62,"props":230,"children":232},{"className":231},[],[233],{"type":43,"value":11},{"type":43,"value":235}," for Python)",{"type":37,"tag":106,"props":237,"children":238},{},[239,241,247],{"type":43,"value":240},"Configure the ",{"type":37,"tag":62,"props":242,"children":244},{"className":243},[],[245],{"type":43,"value":246},"RUNWAYML_API_SECRET",{"type":43,"value":248}," environment variable",{"type":37,"tag":106,"props":250,"children":251},{},[252,254,260,262],{"type":43,"value":253},"Update ",{"type":37,"tag":62,"props":255,"children":257},{"className":256},[],[258],{"type":43,"value":259},".gitignore",{"type":43,"value":261}," to exclude ",{"type":37,"tag":62,"props":263,"children":265},{"className":264},[],[266],{"type":43,"value":267},".env",{"type":37,"tag":106,"props":269,"children":270},{},[271],{"type":43,"value":272},"Remind about credit purchase requirement ($10 minimum)",{"type":37,"tag":50,"props":274,"children":275},{},[276,281],{"type":37,"tag":54,"props":277,"children":278},{},[279],{"type":43,"value":280},"Wait for the user to confirm",{"type":43,"value":282}," they have their API key before proceeding.",{"type":37,"tag":83,"props":284,"children":286},{"id":285},"phase-3-determine-what-to-integrate",[287],{"type":43,"value":288},"Phase 3: Determine What to Integrate",{"type":37,"tag":50,"props":290,"children":291},{},[292],{"type":43,"value":293},"Ask the user what they want to build. Based on their response, use the appropriate integration skill:",{"type":37,"tag":295,"props":296,"children":297},"table",{},[298,317],{"type":37,"tag":299,"props":300,"children":301},"thead",{},[302],{"type":37,"tag":303,"props":304,"children":305},"tr",{},[306,312],{"type":37,"tag":307,"props":308,"children":309},"th",{},[310],{"type":43,"value":311},"User wants...",{"type":37,"tag":307,"props":313,"children":314},{},[315],{"type":43,"value":316},"Skill to use",{"type":37,"tag":318,"props":319,"children":320},"tbody",{},[321,341,367,390,407,432,449,465,487,513,542],{"type":37,"tag":303,"props":322,"children":323},{},[324,330],{"type":37,"tag":325,"props":326,"children":327},"td",{},[328],{"type":43,"value":329},"Generate videos from text",{"type":37,"tag":325,"props":331,"children":332},{},[333,339],{"type":37,"tag":62,"props":334,"children":336},{"className":335},[],[337],{"type":43,"value":338},"+rw-integrate-video",{"type":43,"value":340}," (text-to-video)",{"type":37,"tag":303,"props":342,"children":343},{},[344,349],{"type":37,"tag":325,"props":345,"children":346},{},[347],{"type":43,"value":348},"Animate images into video",{"type":37,"tag":325,"props":350,"children":351},{},[352,357,359,365],{"type":37,"tag":62,"props":353,"children":355},{"className":354},[],[356],{"type":43,"value":338},{"type":43,"value":358}," (image-to-video) + ",{"type":37,"tag":62,"props":360,"children":362},{"className":361},[],[363],{"type":43,"value":364},"+rw-integrate-uploads",{"type":43,"value":366}," if local files",{"type":37,"tag":303,"props":368,"children":369},{},[370,375],{"type":37,"tag":325,"props":371,"children":372},{},[373],{"type":43,"value":374},"Edit\u002Ftransform existing videos",{"type":37,"tag":325,"props":376,"children":377},{},[378,383,385],{"type":37,"tag":62,"props":379,"children":381},{"className":380},[],[382],{"type":43,"value":338},{"type":43,"value":384}," (video-to-video) + ",{"type":37,"tag":62,"props":386,"children":388},{"className":387},[],[389],{"type":43,"value":364},{"type":37,"tag":303,"props":391,"children":392},{},[393,398],{"type":37,"tag":325,"props":394,"children":395},{},[396],{"type":43,"value":397},"Generate images from text",{"type":37,"tag":325,"props":399,"children":400},{},[401],{"type":37,"tag":62,"props":402,"children":404},{"className":403},[],[405],{"type":43,"value":406},"+rw-integrate-image",{"type":37,"tag":303,"props":408,"children":409},{},[410,415],{"type":37,"tag":325,"props":411,"children":412},{},[413],{"type":43,"value":414},"Generate images with references",{"type":37,"tag":325,"props":416,"children":417},{},[418,423,425,430],{"type":37,"tag":62,"props":419,"children":421},{"className":420},[],[422],{"type":43,"value":406},{"type":43,"value":424}," + ",{"type":37,"tag":62,"props":426,"children":428},{"className":427},[],[429],{"type":43,"value":364},{"type":43,"value":431}," if local refs",{"type":37,"tag":303,"props":433,"children":434},{},[435,440],{"type":37,"tag":325,"props":436,"children":437},{},[438],{"type":43,"value":439},"Text-to-speech",{"type":37,"tag":325,"props":441,"children":442},{},[443],{"type":37,"tag":62,"props":444,"children":446},{"className":445},[],[447],{"type":43,"value":448},"+rw-integrate-audio",{"type":37,"tag":303,"props":450,"children":451},{},[452,457],{"type":37,"tag":325,"props":453,"children":454},{},[455],{"type":43,"value":456},"Sound effects",{"type":37,"tag":325,"props":458,"children":459},{},[460],{"type":37,"tag":62,"props":461,"children":463},{"className":462},[],[464],{"type":43,"value":448},{"type":37,"tag":303,"props":466,"children":467},{},[468,473],{"type":37,"tag":325,"props":469,"children":470},{},[471],{"type":43,"value":472},"Voice isolation\u002Fdubbing",{"type":37,"tag":325,"props":474,"children":475},{},[476,481,482],{"type":37,"tag":62,"props":477,"children":479},{"className":478},[],[480],{"type":43,"value":448},{"type":43,"value":424},{"type":37,"tag":62,"props":483,"children":485},{"className":484},[],[486],{"type":43,"value":364},{"type":37,"tag":303,"props":488,"children":489},{},[490,495],{"type":37,"tag":325,"props":491,"children":492},{},[493],{"type":43,"value":494},"Real-time conversational avatar",{"type":37,"tag":325,"props":496,"children":497},{},[498,504,505,511],{"type":37,"tag":62,"props":499,"children":501},{"className":500},[],[502],{"type":43,"value":503},"+rw-integrate-characters",{"type":43,"value":424},{"type":37,"tag":62,"props":506,"children":508},{"className":507},[],[509],{"type":43,"value":510},"+rw-integrate-character-embed",{"type":43,"value":512}," (React UI)",{"type":37,"tag":303,"props":514,"children":515},{},[516,521],{"type":37,"tag":325,"props":517,"children":518},{},[519],{"type":43,"value":520},"Avatar with domain knowledge",{"type":37,"tag":325,"props":522,"children":523},{},[524,529,530,536,537],{"type":37,"tag":62,"props":525,"children":527},{"className":526},[],[528],{"type":43,"value":503},{"type":43,"value":424},{"type":37,"tag":62,"props":531,"children":533},{"className":532},[],[534],{"type":43,"value":535},"+rw-integrate-documents",{"type":43,"value":424},{"type":37,"tag":62,"props":538,"children":540},{"className":539},[],[541],{"type":43,"value":510},{"type":37,"tag":303,"props":543,"children":544},{},[545,550],{"type":37,"tag":325,"props":546,"children":547},{},[548],{"type":43,"value":549},"Multiple capabilities",{"type":37,"tag":325,"props":551,"children":552},{},[553],{"type":43,"value":554},"Integrate each one, sharing the same client instance",{"type":37,"tag":83,"props":556,"children":558},{"id":557},"phase-4-write-the-integration-code",[559],{"type":43,"value":560},"Phase 4: Write the Integration Code",{"type":37,"tag":50,"props":562,"children":563},{},[564],{"type":43,"value":565},"Based on the user's framework and needs:",{"type":37,"tag":102,"props":567,"children":568},{},[569,579,589,599],{"type":37,"tag":106,"props":570,"children":571},{},[572,577],{"type":37,"tag":54,"props":573,"children":574},{},[575],{"type":43,"value":576},"Create the API route\u002Fhandler",{"type":43,"value":578}," — server-side endpoint that calls Runway",{"type":37,"tag":106,"props":580,"children":581},{},[582,587],{"type":37,"tag":54,"props":583,"children":584},{},[585],{"type":43,"value":586},"Add upload handling",{"type":43,"value":588}," if the user needs to accept files from their users",{"type":37,"tag":106,"props":590,"children":591},{},[592,597],{"type":37,"tag":54,"props":593,"children":594},{},[595],{"type":43,"value":596},"Add error handling",{"type":43,"value":598}," — catch and handle task failures",{"type":37,"tag":106,"props":600,"children":601},{},[602,607],{"type":37,"tag":54,"props":603,"children":604},{},[605],{"type":43,"value":606},"Handle output storage",{"type":43,"value":608}," — remind user that output URLs expire in 24-48 hours",{"type":37,"tag":83,"props":610,"children":612},{"id":611},"phase-5-test-and-verify",[613],{"type":43,"value":614},"Phase 5: Test and Verify",{"type":37,"tag":50,"props":616,"children":617},{},[618],{"type":43,"value":619},"Help the user:",{"type":37,"tag":102,"props":621,"children":622},{},[623,628,633],{"type":37,"tag":106,"props":624,"children":625},{},[626],{"type":43,"value":627},"Run a test generation to verify everything works",{"type":37,"tag":106,"props":629,"children":630},{},[631],{"type":43,"value":632},"Check for common issues (missing env var, insufficient credits, wrong model)",{"type":37,"tag":106,"props":634,"children":635},{},[636],{"type":43,"value":637},"Confirm output is accessible",{"type":37,"tag":76,"props":639,"children":641},{"id":640},"decision-tree-for-upload-requirements",[642],{"type":43,"value":643},"Decision Tree for Upload Requirements",{"type":37,"tag":50,"props":645,"children":646},{},[647],{"type":43,"value":648},"When the user's workflow involves images or videos as input:",{"type":37,"tag":650,"props":651,"children":655},"pre",{"className":652,"code":654,"language":43},[653],"language-text","Does the input come from a public HTTPS URL?\n├── YES → Pass the URL directly to the API\n└── NO → Is it a local file or user-uploaded file?\n    ├── YES → Use +rw-integrate-uploads to upload first, then pass runway:\u002F\u002F URI\n    └── NO → Is it small enough for a data URI? (\u003C 5MB image, \u003C 16MB video)\n        ├── YES → Convert to base64 data URI\n        └── NO → Use +rw-integrate-uploads\n",[656],{"type":37,"tag":62,"props":657,"children":659},{"__ignoreMap":658},"",[660],{"type":43,"value":654},{"type":37,"tag":76,"props":662,"children":664},{"id":663},"important-reminders",[665],{"type":43,"value":666},"Important Reminders",{"type":37,"tag":137,"props":668,"children":669},{},[670,680,690,700,710,720],{"type":37,"tag":106,"props":671,"children":672},{},[673,678],{"type":37,"tag":54,"props":674,"children":675},{},[676],{"type":43,"value":677},"Never expose the API key in client-side code.",{"type":43,"value":679}," All API calls must happen server-side.",{"type":37,"tag":106,"props":681,"children":682},{},[683,688],{"type":37,"tag":54,"props":684,"children":685},{},[686],{"type":43,"value":687},"Output URLs expire.",{"type":43,"value":689}," Always download and store generated content.",{"type":37,"tag":106,"props":691,"children":692},{},[693,698],{"type":37,"tag":54,"props":694,"children":695},{},[696],{"type":43,"value":697},"Credits are required.",{"type":43,"value":699}," The API won't work without prepaid credits.",{"type":37,"tag":106,"props":701,"children":702},{},[703,708],{"type":37,"tag":54,"props":704,"children":705},{},[706],{"type":43,"value":707},"Rate limits exist.",{"type":43,"value":709}," Rate limits exist. You should always check what is the rate limit before attempting concurrent generations.",{"type":37,"tag":106,"props":711,"children":712},{},[713,718],{"type":37,"tag":54,"props":714,"children":715},{},[716],{"type":43,"value":717},"Content moderation applies",{"type":43,"value":719}," to both inputs and outputs. Safety-flagged inputs are non-refundable.",{"type":37,"tag":106,"props":721,"children":722},{},[723,728,730],{"type":37,"tag":54,"props":724,"children":725},{},[726],{"type":43,"value":727},"Be cost-conscious.",{"type":43,"value":729}," Help users pick the right model for their budget. Credit cost can be found on ",{"type":37,"tag":207,"props":731,"children":734},{"href":732,"rel":733},"https:\u002F\u002Fdocs.dev.runwayml.com\u002Fguides\u002Fpricing\u002F",[211],[735],{"type":43,"value":732},{"items":737,"total":832},[738,755,764,778,793,808,821],{"slug":739,"name":739,"fn":740,"description":741,"org":742,"tags":743,"stars":18,"repoUrl":19,"updatedAt":754},"rw-api-reference","look up Runway API reference","Complete reference for Runway's public API: models, endpoints, costs, limits, and types",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[744,747,748,751],{"name":745,"slug":746,"type":14},"AI Infrastructure","ai-infrastructure",{"name":16,"slug":17,"type":14},{"name":749,"slug":750,"type":14},"Reference","reference",{"name":752,"slug":753,"type":14},"Video","video","2026-04-08T04:41:58.820783",{"slug":756,"name":756,"fn":757,"description":758,"org":759,"tags":760,"stars":18,"repoUrl":19,"updatedAt":763},"rw-check-compatibility","verify codebase compatibility with the Runway API","Analyze a user's codebase to verify it can use Runway's public API (server-side requirement)",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[761,762],{"name":16,"slug":17,"type":14},{"name":9,"slug":8,"type":14},"2026-04-08T04:42:01.271257",{"slug":765,"name":765,"fn":766,"description":767,"org":768,"tags":769,"stars":18,"repoUrl":19,"updatedAt":777},"rw-check-org-details","query Runway API for organization details","Query the Runway API for organization details: rate limits, credit balance, usage tier, and daily generation counts",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[770,773,776],{"name":771,"slug":772,"type":14},"Operations","operations",{"name":774,"slug":775,"type":14},"Reporting","reporting",{"name":9,"slug":8,"type":14},"2026-04-08T04:42:00.054235",{"slug":779,"name":779,"fn":780,"description":781,"org":782,"tags":783,"stars":18,"repoUrl":19,"updatedAt":792},"rw-fetch-api-reference","retrieve Runway API reference","Retrieve the latest Runway API reference from docs.dev.runwayml.com and use it as the authoritative source before any integration work",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[784,785,788,791],{"name":16,"slug":17,"type":14},{"name":786,"slug":787,"type":14},"Documentation","documentation",{"name":789,"slug":790,"type":14},"Research","research",{"name":9,"slug":8,"type":14},"2026-04-08T04:42:07.604739",{"slug":794,"name":794,"fn":795,"description":796,"org":797,"tags":798,"stars":18,"repoUrl":19,"updatedAt":807},"rw-generate-audio","generate audio with Runway API","Generate audio using the Runway API via runnable scripts. Supports TTS, sound effects, voice isolation, dubbing, and voice conversion.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[799,800,803,806],{"name":745,"slug":746,"type":14},{"name":801,"slug":802,"type":14},"Audio","audio",{"name":804,"slug":805,"type":14},"Creative","creative",{"name":9,"slug":8,"type":14},"2026-04-17T04:51:59.892185",{"slug":809,"name":809,"fn":810,"description":811,"org":812,"tags":813,"stars":18,"repoUrl":19,"updatedAt":820},"rw-generate-image","generate images with Runway API","Generate images directly using the Runway API via runnable scripts. Supports text-to-image with optional reference images.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[814,815,816,819],{"name":745,"slug":746,"type":14},{"name":804,"slug":805,"type":14},{"name":817,"slug":818,"type":14},"Image Generation","image-generation",{"name":9,"slug":8,"type":14},"2026-04-17T04:52:01.158325",{"slug":822,"name":822,"fn":823,"description":824,"org":825,"tags":826,"stars":18,"repoUrl":19,"updatedAt":831},"rw-generate-video","generate videos with Runway API","Generate videos directly using the Runway API via runnable scripts. Supports text-to-video, image-to-video, and video-to-video with seedance2, gen4.5, veo3, and more.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[827,828,829,830],{"name":745,"slug":746,"type":14},{"name":804,"slug":805,"type":14},{"name":9,"slug":8,"type":14},{"name":752,"slug":753,"type":14},"2026-04-17T04:51:58.600919",17,{"items":834,"total":955},[835,842,847,853,860,867,874,881,895,913,924,944],{"slug":739,"name":739,"fn":740,"description":741,"org":836,"tags":837,"stars":18,"repoUrl":19,"updatedAt":754},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[838,839,840,841],{"name":745,"slug":746,"type":14},{"name":16,"slug":17,"type":14},{"name":749,"slug":750,"type":14},{"name":752,"slug":753,"type":14},{"slug":756,"name":756,"fn":757,"description":758,"org":843,"tags":844,"stars":18,"repoUrl":19,"updatedAt":763},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[845,846],{"name":16,"slug":17,"type":14},{"name":9,"slug":8,"type":14},{"slug":765,"name":765,"fn":766,"description":767,"org":848,"tags":849,"stars":18,"repoUrl":19,"updatedAt":777},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[850,851,852],{"name":771,"slug":772,"type":14},{"name":774,"slug":775,"type":14},{"name":9,"slug":8,"type":14},{"slug":779,"name":779,"fn":780,"description":781,"org":854,"tags":855,"stars":18,"repoUrl":19,"updatedAt":792},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[856,857,858,859],{"name":16,"slug":17,"type":14},{"name":786,"slug":787,"type":14},{"name":789,"slug":790,"type":14},{"name":9,"slug":8,"type":14},{"slug":794,"name":794,"fn":795,"description":796,"org":861,"tags":862,"stars":18,"repoUrl":19,"updatedAt":807},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[863,864,865,866],{"name":745,"slug":746,"type":14},{"name":801,"slug":802,"type":14},{"name":804,"slug":805,"type":14},{"name":9,"slug":8,"type":14},{"slug":809,"name":809,"fn":810,"description":811,"org":868,"tags":869,"stars":18,"repoUrl":19,"updatedAt":820},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[870,871,872,873],{"name":745,"slug":746,"type":14},{"name":804,"slug":805,"type":14},{"name":817,"slug":818,"type":14},{"name":9,"slug":8,"type":14},{"slug":822,"name":822,"fn":823,"description":824,"org":875,"tags":876,"stars":18,"repoUrl":19,"updatedAt":831},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[877,878,879,880],{"name":745,"slug":746,"type":14},{"name":804,"slug":805,"type":14},{"name":9,"slug":8,"type":14},{"name":752,"slug":753,"type":14},{"slug":882,"name":882,"fn":883,"description":884,"org":885,"tags":886,"stars":18,"repoUrl":19,"updatedAt":894},"rw-integrate-audio","integrate Runway audio APIs","Help users integrate Runway audio APIs (TTS, sound effects, voice isolation, dubbing)",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[887,888,889,890,891],{"name":16,"slug":17,"type":14},{"name":801,"slug":802,"type":14},{"name":804,"slug":805,"type":14},{"name":9,"slug":8,"type":14},{"name":892,"slug":893,"type":14},"Speech","speech","2026-04-08T04:42:10.081814",{"slug":896,"name":896,"fn":897,"description":898,"org":899,"tags":900,"stars":18,"repoUrl":19,"updatedAt":912},"rw-integrate-character-embed","embed Runway characters in React apps","Help users embed Runway Character avatar calls in React apps using the @runwayml\u002Favatars-react SDK",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[901,902,905,908,909],{"name":16,"slug":17,"type":14},{"name":903,"slug":904,"type":14},"Frontend","frontend",{"name":906,"slug":907,"type":14},"React","react",{"name":9,"slug":8,"type":14},{"name":910,"slug":911,"type":14},"UI Components","ui-components","2026-04-08T04:42:08.849481",{"slug":914,"name":914,"fn":915,"description":916,"org":917,"tags":918,"stars":18,"repoUrl":19,"updatedAt":923},"rw-integrate-characters","integrate Runway conversational characters","Help users create Runway Characters (GWM-1 avatars) and integrate real-time conversational sessions into their apps",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[919,920,921,922],{"name":16,"slug":17,"type":14},{"name":801,"slug":802,"type":14},{"name":804,"slug":805,"type":14},{"name":9,"slug":8,"type":14},"2026-04-08T04:42:06.171483",{"slug":925,"name":925,"fn":926,"description":927,"org":928,"tags":929,"stars":18,"repoUrl":19,"updatedAt":943},"rw-integrate-documents","add documents to Runway Characters","Help users add knowledge base documents to Runway Characters for domain-specific conversations",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[930,933,936,939,942],{"name":931,"slug":932,"type":14},"Agents","agents",{"name":934,"slug":935,"type":14},"AI Context","ai-context",{"name":937,"slug":938,"type":14},"Documents","documents",{"name":940,"slug":941,"type":14},"Knowledge Management","knowledge-management",{"name":9,"slug":8,"type":14},"2026-04-08T04:42:04.95186",{"slug":945,"name":945,"fn":946,"description":947,"org":948,"tags":949,"stars":18,"repoUrl":19,"updatedAt":954},"rw-integrate-image","integrate Runway image generation APIs","Help users integrate Runway image generation APIs (text-to-image with reference images)",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[950,951,952,953],{"name":16,"slug":17,"type":14},{"name":804,"slug":805,"type":14},{"name":817,"slug":818,"type":14},{"name":9,"slug":8,"type":14},"2026-04-08T04:42:11.322008",18]