This page provides an overview of available API endpoints. For the complete specification, see the OpenAPI documentation.
Tasks
Manage tasks, subtasks, and task metadata.
List Tasks
GET /api/v1/organizations/{orgId}/tasks Query Parameters:
| Parameter | Type | Description |
|---|---|---|
projectId | uuid | Filter by project |
status | string | Filter by status: todo, in_progress, done |
priority | string | Filter by priority: low, medium, high, urgent |
assigneeId | uuid | Filter by assignee |
sprintId | uuid | Filter by sprint |
offset | integer | Pagination offset |
limit | integer | Items per page (max 100) |
Example:
curl https://api.tapioca.dev/api/v1/organizations/{orgId}/tasks?status=in_progress
-H "Authorization: Bearer tap_xxx" Create Task
POST /api/v1/organizations/{orgId}/tasks Body:
{
"title": "Implement user authentication",
"description": "Add OAuth2 support",
"projectId": "550e8400-e29b-41d4-a716-446655440000",
"priority": "high",
"assigneeId": "550e8400-e29b-41d4-a716-446655440001",
"dueDate": "2024-02-15",
"labels": ["backend", "security"]
} Get Task
GET /api/v1/organizations/{orgId}/tasks/{taskId} Update Task
PATCH /api/v1/organizations/{orgId}/tasks/{taskId} Delete Task
DELETE /api/v1/organizations/{orgId}/tasks/{taskId} Projects
Manage projects and project settings.
List Projects
GET /api/v1/organizations/{orgId}/projects Create Project
POST /api/v1/organizations/{orgId}/projects Body:
{
"name": "Website Redesign",
"description": "Complete overhaul of company website",
"color": "#3B82F6",
"budget": 50000,
"currency": "EUR"
} Get Project
GET /api/v1/organizations/{orgId}/projects/{projectId} Update Project
PATCH /api/v1/organizations/{orgId}/projects/{projectId} Delete Project
DELETE /api/v1/organizations/{orgId}/projects/{projectId} Time Tracking
Log and manage time entries.
List Time Entries
GET /api/v1/organizations/{orgId}/time-entries Query Parameters:
| Parameter | Type | Description |
|---|---|---|
userId | uuid | Filter by user |
projectId | uuid | Filter by project |
taskId | uuid | Filter by task |
startDate | date | Entries from this date |
endDate | date | Entries until this date |
billable | boolean | Filter billable entries |
Create Time Entry
POST /api/v1/organizations/{orgId}/time-entries Body:
{
"taskId": "550e8400-e29b-41d4-a716-446655440000",
"startTime": "2024-01-15T09:00:00Z",
"endTime": "2024-01-15T11:30:00Z",
"description": "Implemented login flow",
"billable": true
} Start Timer
POST /api/v1/organizations/{orgId}/time-entries/start Body:
{
"taskId": "550e8400-e29b-41d4-a716-446655440000",
"description": "Working on feature X"
} Stop Timer
POST /api/v1/organizations/{orgId}/time-entries/stop Get Time Entry
GET /api/v1/organizations/{orgId}/time-entries/{entryId} Update Time Entry
PATCH /api/v1/organizations/{orgId}/time-entries/{entryId} Delete Time Entry
DELETE /api/v1/organizations/{orgId}/time-entries/{entryId} Sprints
Manage sprints and sprint planning.
List Sprints
GET /api/v1/organizations/{orgId}/sprints Create Sprint
POST /api/v1/organizations/{orgId}/sprints Body:
{
"name": "Sprint 14",
"projectId": "550e8400-e29b-41d4-a716-446655440000",
"startDate": "2024-01-15",
"endDate": "2024-01-29",
"goal": "Complete user authentication module"
} Start Sprint
POST /api/v1/organizations/{orgId}/sprints/{sprintId}/start Complete Sprint
POST /api/v1/organizations/{orgId}/sprints/{sprintId}/complete Users & Teams
Manage organization members and teams.
List Members
GET /api/v1/organizations/{orgId}/members Get Current User
GET /api/v1/me Update Profile
PATCH /api/v1/me Webhooks
Configure webhooks for real-time notifications.
List Webhooks
GET /api/v1/organizations/{orgId}/webhooks Create Webhook
POST /api/v1/organizations/{orgId}/webhooks Body:
{
"url": "https://your-server.com/webhook",
"events": ["task.created", "task.updated", "time_entry.created"],
"secret": "your_webhook_secret"
} Webhook Events
| Event | Description |
|---|---|
task.created | A task was created |
task.updated | A task was updated |
task.deleted | A task was deleted |
task.completed | A task was marked complete |
time_entry.created | Time was logged |
time_entry.updated | Time entry was modified |
sprint.started | Sprint was started |
sprint.completed | Sprint was completed |
comment.created | Comment was added |
Webhook Payload
{
"event": "task.created",
"timestamp": "2024-01-15T10:30:00Z",
"organization": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Acme Corp"
},
"data": {
"id": "550e8400-e29b-41d4-a716-446655440001",
"title": "New task",
...
}
} Webhook Security
Reports & Analytics
Access reporting and analytics data.
Time Report
GET /api/v1/organizations/{orgId}/reports/time Query Parameters:
| Parameter | Type | Description |
|---|---|---|
startDate | date | Report start date |
endDate | date | Report end date |
groupBy | string | user, project, task, day, week |
projectId | uuid | Filter by project |
Project Summary
GET /api/v1/organizations/{orgId}/reports/projects/{projectId}/summary Returns:
- Total hours logged
- Budget utilization
- Task completion rate
- Team velocity
Health & Status
API Health Check
GET /api/v1/health Returns API status and version information. No authentication required.
{
"status": "healthy",
"version": "1.5.0",
"timestamp": "2024-01-15T10:30:00Z"
} Full OpenAPI Specification
For complete endpoint documentation including all request/response schemas, download the OpenAPI specification:
- YAML: /api/openapi.yaml
- JSON: /api/openapi.json
You can import this into tools like: