curl --request POST \
--url https://api.phylo.bio/v1/experimental/tasks \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"project_id": "prj_0126xxQZB9MmSUaTs1MtRAgU",
"title": "Quick variant lookup"
}
'
{
"id": "tsk_013ulkKbtuwHmE0ZlTLlnFU3",
"type": "task",
"created_at": "2026-08-12T22:54:00.425353Z",
"status": "running",
"project_id": "prj_0126xxQZB9MmSUaTs1MtRAgU",
"title": "BRCA1 variant clinical report",
"platform": "api"
}Tasks
Start a task
Create an idle task inside a project, or start it immediately with initial messages.
POST
/
experimental
/
tasks
curl --request POST \
--url https://api.phylo.bio/v1/experimental/tasks \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"project_id": "prj_0126xxQZB9MmSUaTs1MtRAgU",
"title": "Quick variant lookup"
}
'
{
"id": "tsk_013ulkKbtuwHmE0ZlTLlnFU3",
"type": "task",
"created_at": "2026-08-12T22:54:00.425353Z",
"status": "running",
"project_id": "prj_0126xxQZB9MmSUaTs1MtRAgU",
"title": "BRCA1 variant clinical report",
"platform": "api"
}The task shares the project’s files and starts in
idle. It stays idle until you send the first message with POST /tasks/{id}/messages, which moves it to running. Read its status with GET /tasks/{id} and stop it with POST /tasks/{id}/cancel.
model picks the tier the agent runs on. It is fixed when the task is created and cannot be changed afterwards, so start a new task to work on a different tier. Omit it to take the default.
Pass initial_messages to skip that second call: the messages are delivered to the task in the order you list them and the agent starts on the last one, reading the ones before it as the conversation so far. The task comes back as running.Authorizations
Requires an API key. See the Authentication guide.
Body
application/json
Maximum array length:
20Show child attributes
Show child attributes
Model tier for this task: standard (the default balance of speed and capability), fast (lower latency on a lighter model), or max (the highest-capability model).
Available options:
standard, fast, max Fail the task instead of switching to a fallback model or provider.
Response
201 - application/json
Task created.
Available options:
idle, running, completed, cancelled, failed Allowed value:
"task"Available options:
api, mcp, web, desktop, mobile Show child attributes
Show child attributes
