Properties
| Name | Type | Description |
|---|---|---|
| runId | string | Optional pre-generated run ID. If not provided, server generates one. Useful for idempotency and tracking runs before they start. |
| inputs | object | Tool-specific input parameters |
| files | object | Files made available to the tool, keyed by the input name used in expressions. |
| credentials | object | Ephemeral secret names and values merged into the run context. These values are not saved. Prefer a saved credential and `options.pinnedCredentials` for reusable integrations. |
| includeStepResultData | boolean | Include each step's result data in a synchronous response. |
| stateFixture | object | Seed sourceData.persistedState for this run instead of the tool's persistent state. A seeded run never reads or saves persistent state changes, so it can test warm-state behavior (watermarks, cursors, |
| options | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/superglue/main/json-schema/superglue-run-request-schema.json",
"title": "RunRequest",
"x-generated": "2026-10-19",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/superglue-openapi.yml#/components/schemas/RunRequest",
"type": "object",
"properties": {
"runId": {
"type": "string",
"description": "Optional pre-generated run ID. If not provided, server generates one.\nUseful for idempotency and tracking runs before they start.\n"
},
"inputs": {
"type": "object",
"description": "Tool-specific input parameters",
"additionalProperties": true
},
"files": {
"type": "object",
"description": "Files made available to the tool, keyed by the input name used in expressions.",
"additionalProperties": {
"$ref": "#/$defs/ExecutionFileEnvelope"
}
},
"credentials": {
"type": "object",
"description": "Ephemeral secret names and values merged into the run context. These values are not saved.\nPrefer a saved credential and `options.pinnedCredentials` for reusable integrations.\n",
"additionalProperties": {
"type": "string"
}
},
"includeStepResultData": {
"type": "boolean",
"default": false,
"description": "Include each step's result data in a synchronous response."
},
"stateFixture": {
"type": "object",
"description": "Seed sourceData.persistedState for this run instead of the tool's persistent state.\nA seeded run never reads or saves persistent state changes, so it can test warm-state\nbehavior (watermarks, cursors, dedupe) without touching real state. To adopt a state\npermanently, use PUT /tools/{toolId}/state.\n",
"additionalProperties": true
},
"options": {
"type": "object",
"properties": {
"async": {
"type": "boolean",
"default": false,
"description": "If true, return immediately (202) and execute asynchronously. If false, wait for completion (200)."
},
"timeout": {
"type": "integer",
"description": "Request timeout in milliseconds",
"minimum": 1
},
"webhookUrl": {
"type": "string",
"description": "Callback URL or tool chain trigger when the run finishes. Supports two formats:\n\n**HTTP webhook (notify external service):**\nStandard URL (e.g., `https://your-app.com/webhooks/superglue`). \nReceives a POST request with the Run object in the body.\n\n**Tool chain (trigger another tool):**\nUse `tool:{toolId}` format (e.g., `tool:process-results`).\nAutomatically triggers the specified tool with the current tool's output as its input payload.\nThe chained tool run will have `requestSource: \"tool-chain\"`.\n\nTool chaining enables building multi-tool workflows where one tool's output feeds into another.\n"
},
"pinnedCredentials": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"description": "Per-system credential selection as `{ systemId: credentialsId }`.\nEach pinned credential must be accessible to the executing user.\nSystems not listed use the executing user's default credentials.\n"
},
"requestSource": {
"type": "string",
"description": "Override the request source identifier. Only client request sources are honored;\nother values are derived from the request context.\n",
"enum": [
"frontend",
"agent",
"mcp",
"cli"
]
},
"traceId": {
"type": "string",
"description": "Custom trace ID for log tracking"
},
"clientInfo": {
"type": "object",
"description": "Optional client identity stored with the run.",
"properties": {
"name": {
"type": "string",
"maxLength": 256
},
"version": {
"type": "string",
"maxLength": 256
},
"userAgent": {
"type": "string",
"maxLength": 256
}
}
}
}
}
},
"$defs": {
"AnyValue": {
"description": "Any valid JSON value."
},
"ExecutionFileEnvelope": {
"type": "object",
"required": [
"kind",
"filename",
"contentType",
"size"
],
"properties": {
"kind": {
"type": "string",
"enum": [
"execution_file"
]
},
"filename": {
"type": "string"
},
"contentType": {
"type": "string"
},
"size": {
"type": "integer",
"minimum": 0
},
"rawBase64": {
"type": "string",
"format": "byte",
"description": "Base64-encoded file contents when supplied inline."
},
"fileType": {
"type": "string",
"enum": [
"CSV",
"JSON",
"XML",
"YAML",
"EXCEL",
"HTML",
"PDF",
"DOCX",
"PPTX",
"ZIP",
"BINARY",
"RAW",
"AUTO"
]
},
"extracted": {
"$ref": "#/$defs/AnyValue"
},
"parseError": {
"type": "string"
}
}
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/superglue-run-request"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.