GET /api/tasks
Get task list

Get a list of company’s tasks.

Examples

{
  "collection": [
    {
      "id": 14,
      "cost_center_id": 17087,
      "cost_center_name": "Cost center name that people use a lot",
      "name": "Task A",
      "notes": "Some very important task",
      "start_date": "2025-02-01",
      "end_date": "2025-03-01",
      "state": "in_progress",
      "external_id": "42",
      "monthly_limit_minutes": null,
      "is_time_limit_hard": false,
      "is_billable": true,
      "billable_amount_cents": 5000,
      "billable_amount_currency": "EUR",
      "billable_amount_unit": "hour"
    }
  ],
  "pagination": {
    "current_page": 1,
    "total_pages": 1,
    "total_count": 1
  }
}

Params

Param name Description
page
optional

Page number.

Validations:

  • Must be a Integer

per_page
optional

Number of records per page. Default: 50.

Validations:

  • Must be a Integer

cost_center_id
optional

Cost center ID to filter tasks by.

Validations:

  • Must be a Integer

q
optional

Pass query to filter tasks by name (case-insensitive).

Validations:

  • Must be a String

state
optional

State to filter tasks by.

Validations:

  • Must be one of: in_progress, completed, not_started.

sort_by
optional

Sort by field. Default: cost_center_id.

Validations:

  • Must be a String

order
optional

Sorting order (descending or ascending). Default: asc.

Validations:

  • Must be one of: desc, asc.


GET /api/tasks/:id
Get a specific task

Examples

{
  "id": 1608,
  "cost_center_id": 17090,
  "cost_center_name": "Apollo",
  "name": "Bookkeeping",
  "notes": "A task for bookkeeping",
  "start_date": null,
  "end_date": null,
  "state": "in_progress",
  "external_id": "42",
  "monthly_limit_minutes": null,
  "is_time_limit_hard": false,
  "is_billable": false,
  "billable_amount_cents": 0,
  "billable_amount_currency": "EUR",
  "billable_amount_unit": "hour"
}

Params

Param name Description
id
required

Task ID

Validations:

  • Must be a Integer


POST /api/tasks
Create a task

Params

Param name Description
task
required

Task parameters.

Validations:

  • Must be a Hash

task[cost_center_id]
optional

Cost center (project) ID.

Validations:

  • Must be a Integer

task[name]
required

Task name.

Validations:

  • Must be a String

task[notes]
optional

Additional notes.

Validations:

  • Must be a String

task[start_date]
optional

Start date, e.g. “2025-01-20”.

Validations:

  • Must be a String

task[end_date]
optional

End date, e.g. “2025-02-28”.

Validations:

  • Must be a String

task[state]
optional

Task state. Default: "in_progress".

Validations:

  • Must be one of: in_progress, completed, not_started.

task[external_id]
optional

Task ID in an external service.

Validations:

  • Must be a String

task[monthly_limit_minutes]
optional

Monthly time limit (estimated time in offer), in minutes.

Validations:

  • Must be a Integer

task[is_time_limit_hard]
optional

Is the time limit hard (true) or soft (false). Default: false (soft).

Validations:

  • Must be one of: true, false, 1, 0.

task[is_billable]
optional

Is the task billable (true) or non-billable (false). Default: false (non-billable).

Validations:

  • Must be one of: true, false, 1, 0.

task[billable_amount_cents]
optional

Amount billed to the customer, in cents. Only applicable for billable tasks. Example: for a billable amount of €100.00, send 10000.

Validations:

  • Must be a Integer

task[billable_amount_currency]
optional

Billable amount’s currency code per ISO 4217 standard. Example: send "EUR" for Euro. Default: "EUR".

Validations:

  • Must be a String

task[billable_amount_unit]
optional

Billlable amount’s unit. Default: "hour".

Validations:

  • Must be one of: hour, day, fixed.


PUT /api/tasks/:id
Update a task

Params

Param name Description
id
required

Task ID

Validations:

  • Must be a Integer

task
required

Task parameters.

Validations:

  • Must be a Hash

task[cost_center_id]
optional

Cost center (project) ID.

Validations:

  • Must be a Integer

task[name]
required

Task name.

Validations:

  • Must be a String

task[notes]
optional

Additional notes.

Validations:

  • Must be a String

task[start_date]
optional

Start date, e.g. “2025-01-20”.

Validations:

  • Must be a String

task[end_date]
optional

End date, e.g. “2025-02-28”.

Validations:

  • Must be a String

task[state]
optional

Task state. Default: "in_progress".

Validations:

  • Must be one of: in_progress, completed, not_started.

task[external_id]
optional

Task ID in an external service.

Validations:

  • Must be a String

task[monthly_limit_minutes]
optional

Monthly time limit (estimated time in offer), in minutes.

Validations:

  • Must be a Integer

task[is_time_limit_hard]
optional

Is the time limit hard (true) or soft (false). Default: false (soft).

Validations:

  • Must be one of: true, false, 1, 0.

task[is_billable]
optional

Is the task billable (true) or non-billable (false). Default: false (non-billable).

Validations:

  • Must be one of: true, false, 1, 0.

task[billable_amount_cents]
optional

Amount billed to the customer, in cents. Only applicable for billable tasks. Example: for a billable amount of €100.00, send 10000.

Validations:

  • Must be a Integer

task[billable_amount_currency]
optional

Billable amount’s currency code per ISO 4217 standard. Example: send "EUR" for Euro. Default: "EUR".

Validations:

  • Must be a String

task[billable_amount_unit]
optional

Billlable amount’s unit. Default: "hour".

Validations:

  • Must be one of: hour, day, fixed.


DELETE /apitasks/:id
Delete a task

Params

Param name Description
id
required

Task ID

Validations:

  • Must be a Integer