Skip to main content

Bytebot API Overview

Bytebot provides two main APIs for programmatic control:

1. Agent API (Task Management)

The Agent API runs on port 9991 and provides high-level task management:

Agent API Base URL

http://localhost:9991 

Example Task Creation

curl -X POST http://localhost:9991/tasks \  -H "Content-Type: application/json" \  -d '{  "description": "Download invoices from webmail and organize by date",  "priority": "HIGH"  }' 

2. Desktop API (Direct Control)

The Desktop API runs on port 9990 and provides low-level desktop control:

Desktop API Base URL

http://localhost:9990 

Example Desktop Control

curl -X POST http://localhost:9990/computer-use \  -H "Content-Type: application/json" \  -d '{"action": "screenshot"}' 

MCP Support

The Desktop API also exposes an MCP (Model Context Protocol) endpoint:
http://localhost:9990/mcp 
Connect your MCP client to access desktop control tools over SSE.

Authentication

  • Local Access: No authentication required by default
  • Remote Access: Configure authentication based on your security requirements
  • Production: Implement API keys, OAuth, or other authentication methods

Response Formats

Agent API Response

{  "id": "task-123",  "status": "RUNNING",  "description": "Your task description",  "messages": [...],  "createdAt": "2024-01-01T00:00:00Z" } 

Desktop API Response

{  "success": true,  "data": { ... }, // Response data specific to the action  "error": null // Error message if success is false } 

Error Handling

Both APIs use standard HTTP status codes:
Status CodeDescription
200Success
201Created (new resource)
400Bad Request - Invalid parameters
401Unauthorized - Authentication failed
404Not Found - Resource doesn’t exist
500Internal Server Error

Rate Limiting

  • Agent API: No hard limits, but consider task queue capacity
  • Desktop API: No rate limiting, but rapid actions may impact desktop performance

Best Practices

  1. Use Agent API for high-level automation - Let the AI handle complexity
  2. Use Desktop API for precise control - When you need exact actions
  3. Combine both APIs - Create tasks via Agent API, monitor via Desktop API
  4. Handle errors gracefully - Implement retry logic for transient failures
  5. Monitor resource usage - Both APIs can be resource-intensive

Next Steps