CONNECT APP
Build with Renderio
Developer Tools
- API key
MCP
Give your agent Renderio tools
Every Renderio action is exposed as an MCP tool on Pipedream's remote server. Point a client at it with your end user's ID and Connect resolves that user's Renderio account for each tool call — you store no tokens.
// accessToken: mint a short-lived token with the Connect SDK — see the MCP guide
const transport = new StreamableHTTPClientTransport(
new URL("https://remote.mcp.pipedream.net/v3"),
{
requestInit: {
headers: {
Authorization: `Bearer ${accessToken}`,
"x-pd-project-id": "{project_id}",
"x-pd-environment": "production",
"x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
"x-pd-app-slug": "renderio",
},
},
},
)
const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)
const { tools } = await mcp.listTools()
// e.g. run Delete Stored File:
const result = await mcp.callTool({
name: "renderio-delete-stored-file",
arguments: {
fileId: "File ID",
},
})# access_token: mint a short-lived token with the Connect SDK — see the MCP guide
headers = {
"Authorization": f"Bearer {access_token}",
"x-pd-project-id": "{project_id}",
"x-pd-environment": "production",
"x-pd-external-user-id": "{external_user_id}", # any stable ID for this user in your system
"x-pd-app-slug": "renderio",
}
async with streamablehttp_client("https://remote.mcp.pipedream.net/v3", headers=headers) as (read, write, _):
async with ClientSession(read, write) as session:
await session.initialize()
tools = await session.list_tools()
# e.g. run Delete Stored File:
result = await session.call_tool("renderio-delete-stored-file", {
"fileId": "File ID",
})API PROXY
Call the Renderio API directly
For an endpoint with no pre-built tool, the Connect proxy forwards your request to the Renderio API with the connected user's credentials attached. You store no tokens and write no refresh logic.
const resp = await pd.proxy.get({
externalUserId: "{external_user_id}", // any stable ID for this user in your system
accountId: "apn_xxxxxxx",
url: "https://renderio.dev/api/v1/commands",
})
// Any allowed Renderio endpoint works here. Pipedream attaches the
// connected account's credentials to the outgoing request.# The path segment is the target URL, URL-safe base64 encoded:
# https://renderio.dev/api/v1/commands
curl "https://api.pipedream.com/v1/connect/{project_id}/proxy/aHR0cHM6Ly9yZW5kZXJpby5kZXYvYXBpL3YxL2NvbW1hbmRz?external_user_id={external_user_id}&account_id=apn_xxxxxxx" \
-H "Authorization: Bearer {access_token}" \
-H "x-pd-environment: production"SDK
Run Renderio actions from your backend
Connect a user's Renderio account once, then run Delete Stored File on their behalf from your own code — TypeScript, Python, or plain HTTP.
import { PipedreamClient } from "@pipedream/sdk"
const pd = new PipedreamClient({
projectId: process.env.PIPEDREAM_PROJECT_ID!,
clientId: process.env.PIPEDREAM_CLIENT_ID!,
clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
projectEnvironment: "production",
})
const result = await pd.actions.run({
id: "renderio-delete-stored-file",
externalUserId: "{external_user_id}", // any stable ID for this user in your system
configuredProps: {
renderio: { authProvisionId: "apn_xxxxxxx" },
fileId: "File ID",
},
})from pipedream import Pipedream
pd = Pipedream(
client_id="{oauth_client_id}",
client_secret="{oauth_client_secret}",
project_id="{project_id}",
project_environment="production",
)
result = pd.actions.run(
id="renderio-delete-stored-file",
external_user_id="{external_user_id}", # any stable ID for this user in your system
configured_props={
"renderio": {"authProvisionId": "apn_xxxxxxx"},
"fileId": "File ID",
},
)curl -X POST https://api.pipedream.com/v1/connect/{project_id}/actions/run \
-H "Content-Type: application/json" \
-H "X-PD-Environment: production" \
-H "Authorization: Bearer {access_token}" \
-d '{
"external_user_id": "{external_user_id}",
"id": "renderio-delete-stored-file",
"configured_props": {
"renderio": { "authProvisionId": "apn_xxxxxxx" },
"fileId": "File ID"
}
}'TOOLS
Renderio actions
On-demand operations your product or agent can configure and run on behalf of a connected user.
-
Delete Stored File
actionDelete a stored file by ID. See the documentationWritev0.0.2 -
Download and Process Video with yt-dlp
actionDownload publicly accessible videos with yt-dlp and optionally process them with FFmpeg. Use this to fetch videos from supported platforms and transform them, for example extract audio, resize, trim, or convert formats. Provide input URLs as a dictionary within_prefixed keys; when processing with FFmpeg, provide output aliases without_prefixes. See the documentationWritev0.0.2 -
Download Video with yt-dlp
actionDownload publicly accessible videos from yt-dlp-supported platforms like YouTube, TikTok, Instagram, Vimeo, and Twitch without additional processing. Provide input URLs as a dictionary within_prefixed keys, for example{ "in_video": "https://www.youtube.com/watch?v=dQw4w9WgXcQ" }. For download plus FFmpeg processing, use Download and Process Video with yt-dlp instead. See the documentationWritev0.0.2 -
Execute Preset
actionExecute a RenderIO preset with input files. See the documentationWritev0.0.2 -
Get FFmpeg Command Status
actionGet the status and results of a previously submitted FFmpeg command. See the documentationRead-onlyv0.0.2 -
Get Preset
actionRetrieve a preset by ID. See the documentationRead-onlyv0.0.2 -
Get Stored File
actionRetrieve a stored file by ID. See the documentationRead-onlyv0.0.2 -
List Presets
actionRetrieve available RenderIO presets. See the documentationRead-onlyv0.0.1 -
List Stored Files
actionRetrieve stored files for the account. See the documentationRead-onlyv0.0.1 -
Run Chained FFmpeg Commands
actionExecute multiple chained FFmpeg commands sequentially with shared input and output file specifications. See the documentationWritev0.0.2 -
Run FFmpeg Command
actionSubmit an FFmpeg command for processing with input and output file specifications. See the documentationWritev0.0.2 -
Run Multiple FFmpeg Commands
actionExecute multiple independent FFmpeg commands in one request. See the documentationWritev0.0.2 -
Store File
actionStore a publicly accessible file URL in RenderIO storage. See the documentationWritev0.0.1 -
Upload File
actionUpload a file directly to RenderIO storage. See the documentationWritev0.0.1
EVENTS
Renderio triggers
Event sources your backend can deploy for users and receive through a webhook.
- App slug
- renderio
- Authentication
- API key
- Categories
- Developer Tools
- Actions
- 14
- Triggers
- 2
- API proxy
- Available