Read a run's output
curl --request GET \
--url https://api.pomerado.ai/v1/code/runs/{id}/output \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.pomerado.ai/v1/code/runs/{id}/output', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.pomerado.ai/v1/code/runs/{id}/output"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"chunks": [
{
"seq": 123,
"stream": "out",
"at": "<string>",
"text": "<string>"
}
],
"more": true
}{
"error": {
"code": "<string>",
"message": "<string>",
"retryable": true,
"docs_url": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"retryable": true,
"docs_url": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"retryable": true,
"docs_url": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"retryable": true,
"docs_url": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"retryable": true,
"docs_url": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"retryable": true,
"docs_url": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"retryable": true,
"docs_url": "<string>",
"details": {}
}
}Tools and integrations
Read a run's output
Read what a run from the Code editor printed, while it runs and after it ends.
GET
/
v1
/
code
/
runs
/
{id}
/
output
Read a run's output
curl --request GET \
--url https://api.pomerado.ai/v1/code/runs/{id}/output \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.pomerado.ai/v1/code/runs/{id}/output', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.pomerado.ai/v1/code/runs/{id}/output"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"chunks": [
{
"seq": 123,
"stream": "out",
"at": "<string>",
"text": "<string>"
}
],
"more": true
}{
"error": {
"code": "<string>",
"message": "<string>",
"retryable": true,
"docs_url": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"retryable": true,
"docs_url": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"retryable": true,
"docs_url": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"retryable": true,
"docs_url": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"retryable": true,
"docs_url": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"retryable": true,
"docs_url": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"retryable": true,
"docs_url": "<string>",
"details": {}
}
}Details
Details
- Business accounts only, with jobs:read. You read the runs whose job you can read with GET /v1/jobs/{id}, and any other run is not found.
- Each chunk is the run’s stdout (out) or stderr (err). A cut chunk, with no text, means the run printed more than the 4 MiB kept.
- Send the last seq you read as after. more is true when more was printed already, so read again at once.
- Output is kept until 60 minutes after the run ends.
- Callers: an API key, an MCP OAuth token or a Dashboard session.
-
Permission:
jobs:read. - Effect: Changes nothing.
-
Errors:
business_account_required,not_found,run_view_throttled, and the errors any request can get.
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
a job ID: job_ and 32 lowercase hex digits
Example:
"job_0f8e2d1c4b3a49e8a7f6e5d4c3b2a190"
Query Parameters
The seq of the last chunk you read; leave it out to read from the start