Skip to main content

Tasks API

Endpoints for creating, reading, updating, and deleting tasks.

List Tasks

GET /v1/tasks

Query Parameters

Parameter Type Description
projectId string Filter by project
status string Filter by status
assignee string Filter by assignee ID
priority string Filter by priority
label string Filter by label
page number Page number (default: 1)
limit number Items per page (default: 50, max: 100)

Example

curl "https://api.erold.dev/v1/tasks?projectId=proj_abc&status=todo" \
  -H "Authorization: Bearer erold_xxx"

Get Task

GET /v1/tasks/:taskId

Example

curl https://api.erold.dev/v1/tasks/MYAPP-123 \
  -H "Authorization: Bearer erold_xxx"

Response

{
  "data": {
    "id": "MYAPP-123",
    "projectId": "proj_abc123",
    "title": "Implement user authentication",
    "description": "Add JWT-based auth...",
    "status": "in_progress",
    "priority": "high",
    "assignee": {
      "id": "user_xyz",
      "name": "John Doe"
    },
    "labels": ["feature", "auth"],
    "createdAt": "2024-01-15T10:00:00Z",
    "updatedAt": "2024-01-15T14:30:00Z"
  }
}

Create Task

POST /v1/tasks

Body

Field Type Required Description
projectId string Yes Project to create task in
title string Yes Task title
description string No Detailed description
status string No Initial status (default: todo)
priority string No low, medium, high, urgent
assigneeId string No User ID to assign
labels string[] No Array of labels
dueDate string No ISO 8601 date

Example

curl -X POST https://api.erold.dev/v1/tasks \
  -H "Authorization: Bearer erold_xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "projectId": "proj_abc123",
    "title": "Implement user authentication",
    "description": "Add JWT-based auth with refresh tokens",
    "priority": "high",
    "labels": ["feature", "auth"]
  }'

Update Task

PATCH /v1/tasks/:taskId

Update any task fields. Only include fields you want to change.

Example

curl -X PATCH https://api.erold.dev/v1/tasks/MYAPP-123 \
  -H "Authorization: Bearer erold_xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "status": "done",
    "priority": "medium"
  }'

Delete Task

DELETE /v1/tasks/:taskId

Example

curl -X DELETE https://api.erold.dev/v1/tasks/MYAPP-123 \
  -H "Authorization: Bearer erold_xxx"

Search Tasks

GET /v1/tasks/search

Query Parameters

Parameter Type Description
q string Search query (searches title and description)
projectId string Limit search to project

Example

curl "https://api.erold.dev/v1/tasks/search?q=authentication" \
  -H "Authorization: Bearer erold_xxx"

Next Steps