Download Workflow Run Logs
github.download_workflow_run_logs
ActionBusiness appsconnection required
Calls GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs and follows the 302.
Download an Actions run's complete log bundle as a zip file blob.
Connection
- Required
- Yes — the node will not save without one
- Auth type
- Bearer token
- Providers
- GitHub
- Secret shape
- the GitHub personal access token
- Resolved by
- config.connection_id, else node.connection_id, else the tenant's sole GitHub connection
Configuration
3 fields, 3 required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.
| Field | Type | Required | Default | Constraints | Example |
|---|---|---|---|---|---|
owner Repository owner — the user or organisation login. | string | Yes | — | — | octocat |
repo Repository name, without the owner prefix. | string | Yes | — | — | hello-world |
run_id Numeric workflow run id, as returned by github.list_workflow_runs. | string | Yes | — | — | 1 |
Example configuration
Every value below is the contract’s own example or default — nothing invented.
{
"owner": "octocat",
"repo": "hello-world",
"run_id": "1"
}Output
One shape.
file
| Field | Type | Example |
|---|---|---|
ok | boolean | true |
file_content The file, base64-encoded. | string | — |
content_encoding | string | base64 |
filename | string | app-main.zip |
content_type | string | application/zip |
size Raw size in bytes (before base64). | number | — |
{
"content_encoding": "base64",
"content_type": "application/zip",
"file_content": "",
"filename": "app-main.zip",
"ok": true,
"size": 0
}Notes
- GitHub keeps logs for 90 days by default; an older run answers 410 Gone.
- The bundle is capped by MANTLE_BINARY_MAX_BYTES, like every inline file blob.
Solutions with GitHub
See Download Workflow Run Logs run in a workflow.
In a technical demo we add the GitHub connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.