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

# List Projects

> Retrieve all projects available for your organization

Projects are document collections that can be queried using natural language.

<ParamField header="Authorization" type="string" required>
  Bearer token obtained from the authenticate endpoint.
</ParamField>

## Response

<ResponseField name="projects" type="array" required>
  List of projects available for querying.

  <Expandable title="Project object">
    <ResponseField name="id" type="string" required>
      Unique identifier for the project.
    </ResponseField>

    <ResponseField name="name" type="string" required>
      Name of the project.
    </ResponseField>

    <ResponseField name="description" type="string">
      Optional description of the project's contents.
    </ResponseField>

    <ResponseField name="tags" type="array">
      List of tags associated with the project.
    </ResponseField>

    <ResponseField name="created_at" type="string" required>
      ISO 8601 timestamp when the project was created.
    </ResponseField>

    <ResponseField name="updated_at" type="string" required>
      ISO 8601 timestamp when the project was last modified.
    </ResponseField>
  </Expandable>
</ResponseField>

<RequestExample>
  ```bash cURL theme={"theme":{"light":"github-light","dark":"github-dark"}}
  curl -X GET https://api.trellis.sh/v1/projects \
    -H "Authorization: Bearer YOUR_TOKEN"
  ```

  ```python Python theme={"theme":{"light":"github-light","dark":"github-dark"}}
  import requests

  response = requests.get(
      "https://api.trellis.sh/v1/projects",
      headers={"Authorization": "Bearer YOUR_TOKEN"}
  )
  projects = response.json()["projects"]
  ```

  ```javascript JavaScript theme={"theme":{"light":"github-light","dark":"github-dark"}}
  const response = await fetch("https://api.trellis.sh/v1/projects", {
    headers: { Authorization: "Bearer YOUR_TOKEN" },
  });
  const { projects } = await response.json();
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={"theme":{"light":"github-light","dark":"github-dark"}}
  {
    "projects": [
      {
        "id": "proj_abc123",
        "name": "Q4 Financial Review",
        "description": "Quarterly financial analysis documents",
        "tags": ["finance", "quarterly"],
        "created_at": "2025-10-01T09:00:00Z",
        "updated_at": "2025-12-15T14:30:00Z"
      }
    ]
  }
  ```

  ```json 401 theme={"theme":{"light":"github-light","dark":"github-dark"}}
  {
    "detail": "Invalid or expired token"
  }
  ```
</ResponseExample>
