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

# List Repos

> Get a paginated list of all repos you own.

## Query Parameters

<ParamField query="page_start" type="integer">
  Start index of the page (default: 0)
</ParamField>

<ParamField query="page_size" type="integer">
  Number of repos to return per page (default: 100, min: 1, max: 100)
</ParamField>

<ParamField query="order_by" type="string">
  Field to order results by (default: "created\_at")
</ParamField>

<ParamField query="order_descending" type="boolean">
  Whether to sort in descending order (default: false)
</ParamField>

<ParamField query="filter_metadata" type="string">
  URL-encoded JSON map of metadata values to filter by
</ParamField>

## Response

<ResponseField name="items" type="array">
  Array of repo objects

  <Expandable title="properties" defaultOpen={false}>
    <ResponseField name="repo_id" type="string">
      Unique identifier for the repo
    </ResponseField>

    <ResponseField name="created_at" type="string">
      Time when the repo was originally created (ISO 8601 timestamp)
    </ResponseField>

    <ResponseField name="updated_at" type="string">
      Time when the repo was last modified (ISO 8601 timestamp)
    </ResponseField>

    <ResponseField name="metadata" type="object">
      Custom key/value pairs associated with the repo
    </ResponseField>

    <ResponseField name="auto_index" type="boolean">
      Whether the repo is configured to index source files for semantic retrieval
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="next_page" type="integer">
  Start index of the next page (omitted if no more pages)
</ResponseField>

<ResponseField name="total_items" type="integer">
  Total number of repos matching the query
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET "https://api.relace.run/v1/repo?page_size=10" \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```

  ```typescript TypeScript SDK theme={null}
  import { Relace } from "@relace-ai/relace";

  const client = new Relace({ apiKey: "YOUR_API_KEY" });

  const data = await client.repo.list({
      page_size: 10
  });
  console.log(data);
  ```

  ```python Python SDK theme={null}
  from relace import Relace

  client = Relace(api_key="YOUR_API_KEY")

  data = client.repo.list(page_size=10)
  print(data)
  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={null}
  {
    "items": [
      {
        "repo_id": "123e4567-e89b-12d3-a456-426614174000",
        "created_at": "2024-01-15T10:30:00Z",
        "updated_at": "2024-01-15T11:15:00Z",
        "metadata": {
          "name": "my-project",
          "description": "A sample project"
        },
        "auto_index": false
      }
    ],
    "total_items": 1
  }
  ```
</ResponseExample>
