Documentación de la API One Tasks
Integra One Tasks en tus flujos de trabajo. Gestiona proyectos, tareas, usuarios y registro de tiempo de forma programática.
https://api.onetasks.app/v1
Introducción
La API de One Tasks es una interfaz RESTful que permite interactuar programáticamente con todas las funciones de la plataforma. Utiliza verbos HTTP estándar, devuelve respuestas JSON y usa API Keys para la autenticación.
Verbos HTTP estándar (GET, POST, PUT, PATCH, DELETE)
Todas las respuestas en formato JSON con estructura consistente
Todas las peticiones deben usar TLS. HTTP no aceptado
https://api.onetasks.app/v1
Autenticación
Todas las solicitudes a la API requieren autenticación mediante una API Key. Pasa tu clave en el header Authorization como Bearer token.
Authorization: Bearer ot_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxx
curl -H "Authorization: Bearer ot_live_xxxx" \ -H "Content-Type: application/json" \ https://api.onetasks.app/v1/projects
API Keys
Gestiona tus API Keys desde el panel de administrador de One Tasks (Admin → API → Claves). Las API Keys están disponibles desde el plan Scale.
text-emerald-400
text-amber-400
Endpoints de Gestión de Claves
/api-keys
/api-keys
/api-keys/{id}
{
"name": "Integration Zapier",
"scopes": ["projects:read", "tasks:write", "time:read"],
"expires_at": "2027-01-01" // optional
}
{
"id": "key_abc123",
"name": "Integration Zapier",
"key": "ot_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"scopes": ["projects:read", "tasks:write", "time:read"],
"created_at": "2026-03-13T10:00:00Z",
"expires_at": "2027-01-01T00:00:00Z"
// ⚠ The key is only shown once. Store it securely.
}
Ámbitos Disponibles
| Scope | Descripción |
|---|---|
projects:read |
Read projects and their settings |
projects:write |
Create and update projects |
tasks:read |
Read tasks and their data |
tasks:write |
Create, update and complete tasks |
users:read |
Read workspace users |
users:write |
Invite and manage users |
time:read |
Read time entries |
time:write |
Create and edit time entries |
sprints:read |
Read sprints |
sprints:write |
Create and manage sprints |
webhooks:manage |
Create and manage webhooks |
* |
Full access (all scopes) |
Rate Limits
Las solicitudes están limitadas por API Key. Los límites varían según el plan.
| Plan | Peticiones/min | Peticiones/día | Burst |
|---|---|---|---|
| Scale | 60 | 10,000 | 100 |
| Enterprise | 300 | 100,000 | 500 |
La info de rate limit se devuelve en cada cabecera de respuesta:
X-RateLimit-Limit: 60 X-RateLimit-Remaining: 58 X-RateLimit-Reset: 1710330060
Manejo de Errores
La API usa códigos de respuesta HTTP convencionales. Los errores siguen una estructura consistente.
{
"error": {
"code": "VALIDATION_FAILED",
"message": "The title field is required.",
"details": {
"title": ["required"],
"due_date": ["must_be_future_date"]
},
"request_id": "req_abc123xyz"
}
}
Proyectos
Crea y gestiona tus espacios de trabajo y proyectos.
/v1/projects
/v1/projects
/v1/projects/{id}
/v1/projects/{id}
/v1/projects/{id}
/v1/projects/{id}/members
/v1/projects/{id}/members
{
"data": [
{
"id": "proj_abc123",
"name": "One Tasks Landing",
"description": "Rediseño web Q1 2026",
"status": "active",
"members_count": 4,
"tasks_count": 17,
"color": "#2563EB",
"created_at": "2026-01-15T09:00:00Z"
}
],
"meta": { "total": 12, "page": 1, "per_page": 20 }
}
Tareas
CRUD completo para tareas, asignados, subtareas y comentarios.
/v1/projects/{id}/tasks
/v1/projects/{id}/tasks
/v1/tasks/{id}
/v1/tasks/{id}
/v1/tasks/{id}
/v1/tasks/{id}/assignees
/v1/tasks/{id}/complete
/v1/tasks/{id}/subtasks
/v1/tasks/{id}/subtasks
/v1/tasks/{id}/comments
/v1/tasks/{id}/comments
{
"title": "Diseñar pantalla de onboarding",
"description": "Incluir los pasos 1-3 del flujo",
"priority": "high", // low | medium | high | urgent
"status": "pending", // pending | in_progress | review | done
"due_date": "2026-04-01",
"assignees": ["usr_abc", "usr_xyz"],
"estimated_hours": 4,
"tags": ["design", "frontend"]
}
Registro de Tiempo
Registra, actualiza y consulta entradas de tiempo por tarea, usuario o proyecto.
/v1/time-entries
/v1/time-entries
/v1/time-entries/{id}
/v1/time-entries/{id}
/v1/tasks/{id}/timer/start
/v1/tasks/{id}/timer/stop
/v1/reports/time
Webhooks
Recibe notificaciones HTTP en tiempo real cuando ocurran eventos en tu espacio de trabajo.
task.created
task.updated
task.completed
time_entry.created
project.archived
sprint.started
{
"event": "task.completed",
"timestamp": "2026-03-13T15:30:00Z",
"workspace_id": "ws_abc123",
"data": {
"task": {
"id": "task_xyz",
"title": "Diseñar pantalla de onboarding",
"completed_by": "usr_abc",
"project_id": "proj_abc123"
}
}
}
SDKs y Ejemplos de Código
SDKs oficiales y librerías de la comunidad para los lenguajes más populares.
npm install @onetasks/sdk
composer require onetasks/sdk
pip install onetasks
import OneTasks from '@onetasks/sdk'; const client = new OneTasks({ apiKey: 'ot_live_xxxxxxxxxxxx' }); // Create a task const task = await client.tasks.create({ project_id: 'proj_abc123', title: 'Fix mobile nav bug', priority: 'high', assignees: ['usr_abc'] }); console.log(task.id); // task_xyz789
<?php use OneTasks\Client; $client = new Client('ot_live_xxxxxxxxxxxx'); // List projects $projects = $client->projects()->list(); // Create a task $task = $client->tasks()->create([ 'project_id' => 'proj_abc123', 'title' => 'Fix mobile nav bug', 'priority' => 'high', ]); echo $task->id; // task_xyz789
© 2026 One Tasks · Nex Group Agency