TabHR API
Programmatically manage your virtual employees, their containers, tasks, chat, accounts, and more.
Base URL
https://app.tabhr.com/api/v1Auth
Bearer token via API key
Format
JSON request/response
Quick Start
- 1Go to Settings and generate an API key
- 2Add the key to your
Authorization: Bearer tabhr_...header - 3Make requests to any endpoint below
# List your employees
curl -s "https://app.tabhr.com/api/v1/employees" \
-H "Authorization: Bearer tabhr_YOUR_KEY" | jqAuthentication
All API requests require a valid API key passed in the Authorization header.
Header Format
Authorization: Bearer tabhr_YOUR_API_KEYManaging Keys
- Generate API keys in Settings → API Keys
- Each key has full access to all your employees and companies
- Keys can be revoked at any time — revoked keys immediately stop working
- API key secrets are shown once at creation — store them securely
- Maximum 25 active keys per account
Employees
Create, list, update, and delete virtual employees.
Containers
Deploy, stop, redeploy, and terminate employee containers.
Chat
Send messages to employees and retrieve chat history.
Tasks
Assign, update, and manage tasks for employees.
Contacts & Accounts
Manage contact methods and linked accounts (email, phone, Slack, etc.).
Action Logs
Retrieve activity and action logs for employees.
Errors
The API uses standard HTTP status codes and returns JSON error bodies.
| Status | Meaning |
|---|---|
400 | Bad Request — Invalid parameters or missing required fields |
401 | Unauthorized — Missing or invalid API key |
402 | Payment Required — Billing setup needed before deploying |
403 | Forbidden — Operation not allowed |
404 | Not Found — Resource doesn't exist or doesn't belong to you |
409 | Conflict — Resource already in the requested state |
500 | Server Error — Something went wrong on our end |
Error Response Format
{
"error": "Human-readable error message"
}Rate Limits
The API currently has generous rate limits. If you encounter 429 responses, back off and retry with exponential backoff. We reserve the right to rate-limit abusive usage patterns.
