> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dabarai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List projects

> Paginated list of the authenticated user's projects

## Query parameters

<ParamField query="limit" type="integer" default="10">
  Page size.
</ParamField>

<ParamField query="offset" type="integer" default="1">
  Page number, 1-indexed.
</ParamField>

<ParamField query="search" type="string">
  Case-insensitive substring match against `name` and `description`.
</ParamField>

<ParamField query="status" type="string">
  Filter by exact status: `draft`, `deploying`, `running`, `completed`, or `cancelled`.
</ParamField>

<ParamField query="sort" type="string" default="desc">
  `asc` sorts by `createdAt` ascending; any other value sorts descending.
</ParamField>

## Headers

<ParamField header="api-token" type="string" required />

## Response

<ResponseField name="success" type="boolean" />

<ResponseField name="data" type="Project[]">
  Projects limited to the summary fields: `_id`, `name`, `description`,
  `status`, `createdAt`, `updatedAt`, `politicsId`, `files`.
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl "https://api.dabarai.com/v1/projects?limit=20&offset=1&status=draft" \
    -H "api-token: YOUR_TOKEN"
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "success": true,
    "data": [
      {
        "_id": "6982139...",
        "name": "Compañía Azucarera",
        "description": "Analiza...",
        "status": "running",
        "createdAt": "2026-03-09T17:45:51.863Z",
        "updatedAt": "2026-03-12T00:30:51.392Z",
        "politicsId": "69aa51d188c08a82d22fb2d8",
        "files": [
          { "url": "https://...", "type": "pdf", "name": "doc.pdf" }
        ]
      }
    ]
  }
  ```
</ResponseExample>
