agent computer apiAgent Computers APIInbound WebhooksOutbound WebhooksAPI OverviewAgent Computer InternalTasks API
API Overview
Try it in the API Playground.
Base URL
https://api.rebyte.ai/v1
Authentication
Every request requires an API_KEY header. Get your key from Settings > API Keys.
curl https://api.rebyte.ai/v1/tasks \
-H "API_KEY: rbk_your_key_here"
The header name is case-insensitive. API_KEY, api-key, and x-api-key all work.
Endpoints
Agent Computers
| Method | Path | Description |
|---|---|---|
| POST | /agent-computers | Create an Agent Computer |
| GET | /agent-computers | List Agent Computers |
| GET | /agent-computers/:id | Get Agent Computer details |
Tasks
| Method | Path | Description |
|---|---|---|
| POST | /tasks | Create a task |
| GET | /tasks | List tasks |
| GET | /tasks/:id | Get task with status and prompt history |
| POST | /tasks/:id/prompts | Send a follow-up prompt |
| POST | /tasks/:id/cancel | Cancel a running task |
| PATCH | /tasks/:id/visibility | Change task visibility |
| DELETE | /tasks/:id | Soft-delete a task |
| GET | /tasks/:id/events | SSE stream of execution events |
| POST | /files | Get a signed file upload URL |
Workspace Artifacts
| Method | Path | Description |
|---|---|---|
| GET | /workspaces/:id/artifacts | List workspace artifacts |
| GET | /workspaces/:id/artifacts/:filename | Download an artifact |
| POST | /workspaces/:id/artifacts | Upload artifact files |
| POST | /workspaces/:id/artifacts/upload-url | Get signed upload URLs for large files |
| DELETE | /workspaces/:id/artifacts/:filename | Delete an artifact |
| DELETE | /workspaces/:id/artifacts | Delete all artifacts |
Webhooks
| Method | Path | Description |
|---|---|---|
| POST | /webhooks | Register an outbound webhook |
| GET | /webhooks | List outbound webhooks |
| GET | /webhooks/:id | Get webhook details |
| DELETE | /webhooks/:id | Delete a webhook |
| GET | /webhooks/public_key | Get webhook signature public key |
All paths are relative to the base URL (https://api.rebyte.ai/v1).
Error Format
All errors follow this structure:
{
"error": {
"code": "validation_error",
"message": "Invalid request body"
}
}
| Code | HTTP Status | Description |
|---|---|---|
missing_api_key | 401 | API_KEY header not provided |
invalid_api_key | 401 | Invalid or expired API key |
insufficient_scopes | 403 | API key lacks required scopes |
validation_error | 400 | Request body failed validation |
not_found | 404 | Resource does not exist or is not accessible |
limit_exceeded | 400 | Organization limit reached (e.g., max webhooks) |
agent_disabled | 403 | The requested executor is disabled for this organization |
internal_error | 500 | Server-side failure |
Rate Limiting
The API does not currently enforce per-key rate limits. Each POST /tasks provisions a real VM, so costs scale with usage. Use webhooks instead of aggressive polling to reduce unnecessary requests.