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

# List Projects

> Retrieve a list of all projects

This endpoint returns a list of all projects that the authenticated user has access to.

## Response

Returns an array of project objects, each containing the following fields:

<ResponseField name="id" type="string">
  Unique project identifier.
</ResponseField>

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

<ResponseField name="status" type="string">
  Current status of the project.
</ResponseField>

<ResponseField name="translationGlossary" type="string | null">
  ID of the translation glossary, if any.
</ResponseField>

<ResponseField name="voicesGlossary" type="string | null">
  ID of the voices glossary, if any.
</ResponseField>

<ResponseField name="remark" type="string | null">
  Project remarks, if any.
</ResponseField>

<ResponseField name="clientName" type="string | null">
  Client name, if specified.
</ResponseField>

<ResponseField name="projectUrl" type="string">
  URL to access the project in the web app.
</ResponseField>

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

<ResponseField name="updatedAt" type="string">
  ISO 8601 timestamp when the project was last updated.
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET \
    https://studio.dubformer.ai/api/v1/projects \
    -H 'Authorization: Bearer YOUR_API_KEY'
  ```

  ```typescript TypeScript theme={null}
  import axios from 'axios';

  const response = await axios.get(
    'https://studio.dubformer.ai/api/v1/projects',
    {
      headers: {
        'Authorization': 'Bearer YOUR_API_KEY'
      }
    }
  );

  console.log(response.data);
  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={null}
  [
    {
      "id": "proj_5f83a14b2ec1b",
      "name": "Marketing Campaign 2023",
      "status": "new",
      "translationGlossary": "gloss_5f83a14b2ec1b",
      "voicesGlossary": "voices_7c92e3a1f56d8",
      "remark": "Urgent project for Q4 launch",
      "clientName": "Acme Corp",
      "projectUrl": "https://studio.dubformer.ai/projects/proj_5f83a14b2ec1b",
      "createdAt": "2023-12-01T10:00:00.000Z",
      "updatedAt": "2023-12-01T15:30:00.000Z"
    },
    {
      "id": "proj_6e74b25c3fd2a",
      "name": "Company Training Videos",
      "status": "in_progress",
      "translationGlossary": null,
      "voicesGlossary": null,
      "remark": null,
      "clientName": "Internal",
      "projectUrl": "https://studio.dubformer.ai/projects/proj_6e74b25c3fd2a",
      "createdAt": "2023-11-15T08:00:00.000Z",
      "updatedAt": "2023-12-01T12:00:00.000Z"
    }
  ]
  ```
</ResponseExample>

## Notes

<Note>
  Projects are returned in descending order by creation date (newest first).
</Note>

<Note>
  Only projects belonging to the authenticated user's company are returned.
</Note>
