v1

latestOpenAPI 3.0.02026-08-068926279.2 KB
Projects

List all projects

Returns a paginated list of projects. Use the select parameter for a simplified dropdown response.

get/projects

Query parameters

selectstring

If present, returns simplified data for dropdowns

status'active' | 'proposed' | 'completed' | 'on hold' | 'archived' | 'canceled'

Filter by project status

type'hourly' | 'fixed' | 'non-billable'

Filter by project type

client_idinteger

Filter by client ID

searchstring

Search projects by name, type, status, or client

sort'project_start' | 'project_name' | 'type' | 'project_status' | 'created_at' | 'client_id' | 'hours' | 'collected' | 'cost' | 'profit'

Sort field

direction'asc' | 'desc'

Sort direction

per_pageinteger

Items per page (max 100)

Response

Successful response

Example response

{
  "data": [
    {
      "id": 1,
      "team_id": 1,
      "client_id": 1,
      "name": "Website Redesign",
      "type": "hourly",
      "status": "active",
      "start": "01/2024",
      "end": "12/2024",
      "start_date": "2024-01-01",
      "end_date": "2024-12-31",
      "budget": 10000,
      "budget_used": 5000,
      "budget_remaining": 5000,
      "budget_reset": "monthly",
      "track_unbilled_hours_expected_revenue": true,
      "total_hours_recorded": 45.5,
      "hours": 45.5,
      "hours_budget": "100:00",
      "hours_recorded": "45:30",
      "hours_budget_percentage": 45.5,
      "collected": 5000,
      "cost": 3000,
      "profit": 2000,
      "actual_rate": 110,
      "client": {
        "id": 1,
        "name": "Acme Corporation"
      },
      "users": [
        {
          "id": 1,
          "name": "John Doe",
          "avatar": "https://example.com/avatar.jpg"
        }
      ]
    }
  ],
  "meta": {
    "meta": {
      "pagination": {
        "total": 100,
        "count": 15,
        "per_page": 15,
        "current_page": 1,
        "total_pages": 7
      }
    }
  }
}