---
title: List Projects
protocol: rest
method: GET
endpoint: /v1/projects
description: "Retrieve all projects in your organization"
---

# List Projects

Returns a paginated list of all documentation projects in your organization.

<Endpoint method="GET" path="/v1/projects" />

## Query Parameters

<ParamField query="page" type="integer" default="1">
  Page number for pagination.
</ParamField>

<ParamField query="per_page" type="integer" default="20">
  Number of results per page. Maximum: `100`.
</ParamField>

<ParamField query="status" type="string">
  Filter by project status. One of: `active`, `archived`.
</ParamField>

## Response

<ResponseField name="data" type="array">
  Array of project objects.

  <Expandable title="Project object">
    <ResponseField name="id" type="string">
      Unique project identifier (e.g., `prj_abc123`).
    </ResponseField>

    <ResponseField name="name" type="string">
      Project display name.
    </ResponseField>

    <ResponseField name="slug" type="string">
      URL-friendly identifier used in the docs URL.
    </ResponseField>

    <ResponseField name="url" type="string">
      Live documentation URL.
    </ResponseField>

    <ResponseField name="createdAt" type="string">
      ISO 8601 timestamp of project creation.
    </ResponseField>

    <ResponseField name="updatedAt" type="string">
      ISO 8601 timestamp of last update.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="pagination" type="object">
  Pagination metadata.

  <Expandable title="properties">
    <ResponseField name="page" type="integer">
      Current page number.
    </ResponseField>

    <ResponseField name="perPage" type="integer">
      Results per page.
    </ResponseField>

    <ResponseField name="total" type="integer">
      Total number of projects.
    </ResponseField>

    <ResponseField name="totalPages" type="integer">
      Total number of pages.
    </ResponseField>
  </Expandable>
</ResponseField>

## Example

<CodeGroup>
```bash cURL
curl https://api.syntext.dev/v1/projects \
  -H "Authorization: Bearer stx_abc12345_..."
```

```typescript SDK
import { Syntext } from '@syntext/sdk'

const client = new Syntext('stx_abc12345_...')
const { data } = await client.projects.list()
```

```python Python
from syntext import Syntext

client = Syntext("stx_abc12345_...")
projects = client.projects.list()
```
</CodeGroup>

### Response

```json
{
  "data": [
    {
      "id": "prj_abc123",
      "name": "API Docs",
      "slug": "api-docs",
      "url": "https://api-docs-docs.syntext.dev",
      "createdAt": "2026-01-15T12:00:00Z",
      "updatedAt": "2026-01-20T08:30:00Z"
    },
    {
      "id": "prj_def456",
      "name": "SDK Reference",
      "slug": "sdk-reference",
      "url": "https://sdk-reference-docs.syntext.dev",
      "createdAt": "2026-02-01T09:15:00Z",
      "updatedAt": "2026-02-10T14:22:00Z"
    }
  ],
  "pagination": {
    "page": 1,
    "perPage": 20,
    "total": 2,
    "totalPages": 1
  }
}
```
