---
metadata:
  - name: generator
    content: Diplodoc Platform v5.61.0
alternate:
  - https://sourcecraft.dev/portal/docs/en/api-ref/Project/ListProjectRepositories.md
  - https://sourcecraft.dev/portal/docs/ru/api-ref/Project/ListProjectRepositories.md
  - href: https://sourcecraft.dev/portal/docs/en/api-ref/Project/ListProjectRepositories.md
    type: text/markdown
    title: Markdown version
  - href: https://sourcecraft.dev/portal/docs/en/llms.txt
    rel: describedby
---
> **Documentation Index:** Fetch the complete configuration index at https://sourcecraft.dev/portal/docs/en/llms.txt

<div class="openapi">

# List Project Repositories

<!-- markdownlint-disable-file -->

## Request

<div class="openapi__requests">

<div class="openapi__request__wrapper" style="--method: var(--dc-openapi-methods-get);margin-bottom: 12px">

<div class="openapi__request">

GET {.openapi__method}
```text translate=no
https://api.sourcecraft.tech/orgs/{org_slug}/projects/{project_slug}/repos
```

</div>

</div>

</div>

### Path parameters

#|
|| **Name** | **Description** ||
||

_org_slug_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

_Example:_{.json-schema-reset .json-schema-example} ``
{.table-cell}
||
||

_project_slug_{.json-schema-reset .json-schema-property .json-schema-required}
{.table-cell}|
**Type**: string

_Example:_{.json-schema-reset .json-schema-example} ``
{.table-cell}
||
|#{.json-schema-properties}

### Query parameters

#|
|| **Name** | **Description** ||
||

_page_size_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string&lt;uint64&gt;

The maximum number of repositories to return. The service may return fewer
than this value.

_Example:_{.json-schema-reset .json-schema-example} ``
{.table-cell}
||
||

_page_token_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

A page token received from a previous call.

_Example:_{.json-schema-reset .json-schema-example} ``
{.table-cell}
||
|#{.json-schema-properties}

## Responses

<div class="openapi__response__code__200">

## 200 OK

A successful response.

<div class="openapi-entity">

### Body

{% cut "application/json" %}

```json translate=no
{
  "repositories": [
    {
      "id": "example",
      "name": "example",
      "default_branch": "example",
      "organization": {
        "id": "example",
        "slug": "example"
      },
      "slug": "example",
      "template_type": "not_a_template",
      "is_empty": true,
      "description": "example",
      "visibility": "public",
      "logo": {
        "url": "example"
      },
      "clone_url": {
        "https": "example",
        "ssh": "example"
      },
      "web_url": "example",
      "links": [
        {
          "link": "example",
          "type": "default"
        }
      ],
      "counters": {
        "forks": "example",
        "pull_requests": "example",
        "issues": "example",
        "tags": "example",
        "branches": "example"
      },
      "last_updated": "2025-01-01T00:00:00Z",
      "language": {
        "name": "example",
        "color": "example"
      },
      "parent": {
        "id": "example",
        "slug": "example",
        "organization": null
      },
      "migration_source": {
        "url": "example",
        "domain": "example"
      },
      "project": {
        "id": "example",
        "slug": "example"
      },
      "rating": {
        "value": 0.5,
        "percentile": 0.5,
        "reaction_counts": [
          {}
        ]
      }
    }
  ],
  "next_page_token": "example"
}
```

{% endcut %}

#|
|| **Name** | **Description** ||
||

_next_page_token_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

A token, which can be sent as `page_token` to retrieve the next page.
If this field is omitted, there are no subsequent pages.

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_repositories_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [Repository](#entity-Repository)[]

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "id": "example",
    "name": "example",
    "default_branch": "example",
    "organization": {
      "id": "example",
      "slug": "example"
    },
    "slug": "example",
    "template_type": "not_a_template",
    "is_empty": true,
    "description": "example",
    "visibility": "public",
    "logo": {
      "url": "example"
    },
    "clone_url": {
      "https": "example",
      "ssh": "example"
    },
    "web_url": "example",
    "links": [
      {
        "link": "example",
        "type": "default"
      }
    ],
    "counters": {
      "forks": "example",
      "pull_requests": "example",
      "issues": "example",
      "tags": "example",
      "branches": "example"
    },
    "last_updated": "2025-01-01T00:00:00Z",
    "language": {
      "name": "example",
      "color": "example"
    },
    "parent": {
      "id": "example",
      "slug": "example",
      "organization": null
    },
    "migration_source": {
      "url": "example",
      "domain": "example"
    },
    "project": {
      "id": "example",
      "slug": "example"
    },
    "rating": {
      "value": 0.5,
      "percentile": 0.5,
      "reaction_counts": [
        {
          "type": "none",
          "count": "example"
        }
      ]
    }
  }
]
```

{% endcut %}
{.table-cell}
||
|#{.json-schema-properties}

</div>

<div class="openapi-entity">

### OrganizationEmbedded {#entity-OrganizationEmbedded}

#|
|| **Name** | **Description** ||
||

_id_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": "example",
  "slug": "example"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### RepoTemplate {#entity-RepoTemplate}

**Type**: string

_Enum:_{.json-schema-reset .json-schema-value} `not_a_template`, `organizational`, `system`

</div>

<div class="openapi-entity">

### Repository.Visibility {#entity-Repository.Visibility}

**Type**: string

_Enum:_{.json-schema-reset .json-schema-value} `public`, `internal`, `private`

</div>

<div class="openapi-entity">

### Image {#entity-Image}

#|
|| **Name** | **Description** ||
||

_url_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "url": "example"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### CloneURL {#entity-CloneURL}

#|
|| **Name** | **Description** ||
||

_https_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_ssh_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "https": "example",
  "ssh": "example"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### Link.LinkType {#entity-Link.LinkType}

**Type**: string

_Enum:_{.json-schema-reset .json-schema-value} `default`, `social_network`, `homepage`, `email`, `telegram`

</div>

<div class="openapi-entity">

### Link {#entity-Link}

#|
|| **Name** | **Description** ||
||

_link_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [Link.LinkType](#entity-Link.LinkType)

_Enum:_{.json-schema-reset .json-schema-value} `default`, `social_network`, `homepage`, `email`, `telegram`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "link": "example",
  "type": "default"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### RepositoryCounters {#entity-RepositoryCounters}

#|
|| **Name** | **Description** ||
||

_branches_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string&lt;uint64&gt;

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_forks_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string&lt;uint64&gt;

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_issues_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string&lt;uint64&gt;

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_pull_requests_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string&lt;uint64&gt;

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_tags_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string&lt;uint64&gt;

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "forks": "example",
  "pull_requests": "example",
  "issues": "example",
  "tags": "example",
  "branches": "example"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### Language {#entity-Language}

#|
|| **Name** | **Description** ||
||

_color_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_name_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "name": "example",
  "color": "example"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### RepositoryEmbedded {#entity-RepositoryEmbedded}

#|
|| **Name** | **Description** ||
||

_id_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_organization_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [OrganizationEmbedded](#entity-OrganizationEmbedded)

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": "example",
  "slug": "example"
}
```

{% endcut %}
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": "example",
  "slug": "example",
  "organization": {
    "id": "example",
    "slug": "example"
  }
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### MigrationSource {#entity-MigrationSource}

#|
|| **Name** | **Description** ||
||

_domain_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_url_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "url": "example",
  "domain": "example"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### RepositoryRatingReaction.Type {#entity-RepositoryRatingReaction.Type}

 - none: Remove the current user's rating reaction.
 - positive_low: A low positive rating reaction. Corresponds to Like in the SourceCraft interface.
 - positive_medium: A medium positive rating reaction. Corresponds to Heart in the SourceCraft interface.
 - positive_high: A high positive rating reaction. Corresponds to Diamond in the SourceCraft interface.

**Type**: string

_Enum:_{.json-schema-reset .json-schema-value} `none`, `positive_low`, `positive_medium`, `positive_high`

</div>

<div class="openapi-entity">

### RepositoryRatingReactionCount {#entity-RepositoryRatingReactionCount}

Number of rating reactions of a particular type.

#|
|| **Name** | **Description** ||
||

_count_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string&lt;uint64&gt;

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [RepositoryRatingReaction.Type](#entity-RepositoryRatingReaction.Type)

 - none: Remove the current user's rating reaction.
 - positive_low: A low positive rating reaction. Corresponds to Like in the SourceCraft interface.
 - positive_medium: A medium positive rating reaction. Corresponds to Heart in the SourceCraft interface.
 - positive_high: A high positive rating reaction. Corresponds to Diamond in the SourceCraft interface.

_Enum:_{.json-schema-reset .json-schema-value} `none`, `positive_low`, `positive_medium`, `positive_high`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "type": "none",
  "count": "example"
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### RepositoryRating {#entity-RepositoryRating}

Aggregated rating information for a repository.

#|
|| **Name** | **Description** ||
||

_percentile_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: number

Repository percentile among rated repositories. Omitted while percentile data is unavailable.
{.table-cell}
||
||

_reaction_counts_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [RepositoryRatingReactionCount](#entity-RepositoryRatingReactionCount)[]

Reaction counters grouped by reaction type.

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "type": "none",
    "count": "example"
  }
]
```

{% endcut %}
{.table-cell}
||
||

_value_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: number

Current repository rating value.
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "value": 0.5,
  "percentile": 0.5,
  "reaction_counts": [
    {
      "type": "none",
      "count": "example"
    }
  ]
}
```

{% endcut %}

</div>

<div class="openapi-entity">

### Repository {#entity-Repository}

#|
|| **Name** | **Description** ||
||

_clone_url_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [CloneURL](#entity-CloneURL)

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "https": "example",
  "ssh": "example"
}
```

{% endcut %}
{.table-cell}
||
||

_counters_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [RepositoryCounters](#entity-RepositoryCounters)

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "forks": "example",
  "pull_requests": "example",
  "issues": "example",
  "tags": "example",
  "branches": "example"
}
```

{% endcut %}
{.table-cell}
||
||

_default_branch_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_description_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_id_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_is_empty_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: boolean
{.table-cell}
||
||

_language_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [Language](#entity-Language)

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "name": "example",
  "color": "example"
}
```

{% endcut %}
{.table-cell}
||
||

_last_updated_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string&lt;date-time&gt;

_Example:_{.json-schema-reset .json-schema-example} `2025-01-01T00:00:00Z`
{.table-cell}
||
||

_links_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [Link](#entity-Link)[]

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
[
  {
    "link": "example",
    "type": "default"
  }
]
```

{% endcut %}
{.table-cell}
||
||

_logo_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [Image](#entity-Image)

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "url": "example"
}
```

{% endcut %}
{.table-cell}
||
||

_migration_source_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [MigrationSource](#entity-MigrationSource)

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "url": "example",
  "domain": "example"
}
```

{% endcut %}
{.table-cell}
||
||

_name_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

Deprecated: obsolete, prefer using slug. Will be removed in future API iterations.

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_organization_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [OrganizationEmbedded](#entity-OrganizationEmbedded)

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": "example",
  "slug": "example"
}
```

{% endcut %}
{.table-cell}
||
||

_parent_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [RepositoryEmbedded](#entity-RepositoryEmbedded)

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": "example",
  "slug": "example",
  "organization": {
    "id": "example",
    "slug": "example"
  }
}
```

{% endcut %}
{.table-cell}
||
||

_project_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [ProjectEmbedded](#entity-ProjectEmbedded)

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": "example",
  "slug": "example"
}
```

{% endcut %}
{.table-cell}
||
||

_rating_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [RepositoryRating](#entity-RepositoryRating)

Aggregated rating information for a repository.

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "value": 0.5,
  "percentile": 0.5,
  "reaction_counts": [
    {
      "type": "none",
      "count": "example"
    }
  ]
}
```

{% endcut %}
{.table-cell}
||
||

_slug_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_template_type_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [RepoTemplate](#entity-RepoTemplate)

_Enum:_{.json-schema-reset .json-schema-value} `not_a_template`, `organizational`, `system`
{.table-cell}
||
||

_visibility_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: [Repository.Visibility](#entity-Repository.Visibility)

_Enum:_{.json-schema-reset .json-schema-value} `public`, `internal`, `private`
{.table-cell}
||
||

_web_url_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

{% cut "**Example**" %}{.json-schema-example}

```json translate=no
{
  "id": "example",
  "name": "example",
  "default_branch": "example",
  "organization": {
    "id": "example",
    "slug": "example"
  },
  "slug": "example",
  "template_type": "not_a_template",
  "is_empty": true,
  "description": "example",
  "visibility": "public",
  "logo": {
    "url": "example"
  },
  "clone_url": {
    "https": "example",
    "ssh": "example"
  },
  "web_url": "example",
  "links": [
    {
      "link": "example",
      "type": "default"
    }
  ],
  "counters": {
    "forks": "example",
    "pull_requests": "example",
    "issues": "example",
    "tags": "example",
    "branches": "example"
  },
  "last_updated": "2025-01-01T00:00:00Z",
  "language": {
    "name": "example",
    "color": "example"
  },
  "parent": {
    "id": "example",
    "slug": "example",
    "organization": null
  },
  "migration_source": {
    "url": "example",
    "domain": "example"
  },
  "project": {
    "id": "example",
    "slug": "example"
  },
  "rating": {
    "value": 0.5,
    "percentile": 0.5,
    "reaction_counts": [
      {
        "type": "none",
        "count": "example"
      }
    ]
  }
}
```

{% endcut %}

</div>

</div>

<div class="openapi__response__code__default">

## default

Both Client Errors (4xx) and Server Errors (5xx) are serialized into this scheme

<div class="openapi-entity">

### Body

{% cut "application/json" %}

```json translate=no
{
  "error_code": "example",
  "message": "example",
  "request_id": "example",
  "details": null
}
```

{% endcut %}

#|
|| **Name** | **Description** ||
||

_details_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: unknown

_Example:_{.json-schema-reset .json-schema-example} `null`
{.table-cell}
||
||

_error_code_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_message_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
||

_request_id_{.json-schema-reset .json-schema-property}
{.table-cell}|
**Type**: string

_Example:_{.json-schema-reset .json-schema-example} `example`
{.table-cell}
||
|#{.json-schema-properties}

</div>

</div>

</div>

[*Deprecated]: No longer supported, please use an alternative and newer version.