Search through job logs with filtering by stream type (stdout/stderr) and message content.
Results are cached for 2 hours when pagination is complete (empty cursor returned).
Path Parameters
The unique identifier of the workflow
The unique identifier of the job
Query Parameters
Pagination cursor from a previous response
Filter by stream type. Values: STDOUT, STDERR, ALL (default: ALL)
Search query to filter log messages. Returns logs containing this substring.
Response
Array of matching log entriesISO 8601 timestamp when the log was created
Sequence number for ordering logs
Stream type: stdout or stderr
Pagination cursor for next page. Empty string indicates no more results.
Examples
# Get only stderr logs
curl -X GET 'https://api.chronoverse.dev/workflows/wf_abc123/jobs/job_xyz789/logs/search?stream=STDERR' \
-H 'Authorization: Bearer YOUR_API_TOKEN'
# Search for specific message
curl -X GET 'https://api.chronoverse.dev/workflows/wf_abc123/jobs/job_xyz789/logs/search?q=error' \
-H 'Authorization: Bearer YOUR_API_TOKEN'
# Combine stream filter and search
curl -X GET 'https://api.chronoverse.dev/workflows/wf_abc123/jobs/job_xyz789/logs/search?stream=STDERR&q=failed' \
-H 'Authorization: Bearer YOUR_API_TOKEN'
# Get only stdout logs
curl -X GET 'https://api.chronoverse.dev/workflows/wf_abc123/jobs/job_xyz789/logs/search?stream=STDOUT' \
-H 'Authorization: Bearer YOUR_API_TOKEN'
Example Response
{
"id": "job_xyz789",
"workflow_id": "wf_abc123",
"logs": [
{
"timestamp": "2026-03-03T10:00:07.789Z",
"message": "Warning: deprecated option used",
"sequence_num": 3,
"stream": "stderr"
},
{
"timestamp": "2026-03-03T10:05:12.345Z",
"message": "Error connecting to database",
"sequence_num": 234,
"stream": "stderr"
},
{
"timestamp": "2026-03-03T10:05:15.678Z",
"message": "Retrying connection attempt",
"sequence_num": 235,
"stream": "stderr"
}
],
"cursor": ""
}
Stream Types
Standard output stream - normal informational messages
Standard error stream - error and warning messages
Both stdout and stderr streams (default)
The search query (q parameter) performs a case-insensitive substring match on log messages.
For large result sets, make sure to paginate using the cursor to avoid timeouts.