curl --request GET \
--url https://seneca-research.fly.dev/v1/research/{run_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://seneca-research.fly.dev/v1/research/{run_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://seneca-research.fly.dev/v1/research/{run_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "<string>",
"prompt": "<string>",
"credits_reserved": 123,
"created_at": "2023-11-07T05:31:56Z",
"progress": {
"total_models": 123,
"completed_models": 123,
"successful_models": 123,
"failed_models": 123
},
"object": "research.run",
"phase": "<string>",
"source": "<string>",
"panel": "<string>",
"credits_charged": 123,
"failure_code": "<string>",
"completed_at": "2023-11-07T05:31:56Z"
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
}
}Read research status
Poll a run after the create request has closed. In-progress statuses are queued, running, and synthesizing. Terminal statuses are completed, partial, and failed.
curl --request GET \
--url https://seneca-research.fly.dev/v1/research/{run_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://seneca-research.fly.dev/v1/research/{run_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://seneca-research.fly.dev/v1/research/{run_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "<string>",
"prompt": "<string>",
"credits_reserved": 123,
"created_at": "2023-11-07T05:31:56Z",
"progress": {
"total_models": 123,
"completed_models": 123,
"successful_models": 123,
"failed_models": 123
},
"object": "research.run",
"phase": "<string>",
"source": "<string>",
"panel": "<string>",
"credits_charged": 123,
"failure_code": "<string>",
"completed_at": "2023-11-07T05:31:56Z"
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"details": {}
}
}Authorizations
Workspace API key created while signed in on the Developers page. Send Authorization: Bearer seneca_sk_… A Clerk session token is not accepted.
Path Parameters
Response
Current run, including credits_reserved, credits_charged, and progress.
queued, running, synthesizing, completed, partial, or failed.
Credits reserved when the run was accepted. This is the panel price and does not change if the run is later refunded.
Show child attributes
Show child attributes
"research.run"panel while models are still answering. Null while synthesizing or after the run finishes.
Canonical panel id: wide, consensus, or seneca. A stored Quick Pulse run still reports quick_pulse.
Null while the run is in progress. Equal to credits_reserved when a customer report is delivered, including a partial run that has a report. 0 after a verified technical failure with no customer report; that refund restores the reserve. failure_code does not change between a charged failure and a refunded one.
research_failed when status is failed. Null otherwise.