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

# List repositories

> List repositories in the organization using cursor pagination

<Note>**Required scope:** `read`</Note>


## OpenAPI

````yaml /openapi.json get /{org}/repos
openapi: 3.1.0
info:
  title: Depot API
  description: Depot HTTP API v1
  version: 1.0.0
servers:
  - url: https://api.mesa.dev/v1
security:
  - apiKey: []
paths:
  /{org}/repos:
    get:
      tags:
        - Repo
      summary: List repositories
      description: List repositories in the organization using cursor pagination
      operationId: listRepos
      parameters:
        - in: path
          name: org
          schema:
            type: string
            minLength: 1
          required: true
        - in: query
          name: cursor
          schema:
            type: string
          description: Opaque pagination cursor from a previous response
        - in: query
          name: limit
          schema:
            type: integer
            minimum: 1
            maximum: 100
          description: Maximum number of items to return (max 100)
        - in: query
          name: tags
          schema:
            type: string
          description: >-
            Repository tag filter. Prefer a JSON-encoded structured filter
            object; legacy comma-separated key:value strings are deprecated but
            still accepted.
      responses:
        '200':
          description: Repository list
          content:
            application/json:
              schema:
                type: object
                properties:
                  next_cursor:
                    anyOf:
                      - type: string
                      - type: 'null'
                    description: >-
                      Cursor for the next page, or null when no more results
                      remain
                  has_more:
                    type: boolean
                    description: Whether another page of results is available
                  repos:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        org:
                          type: string
                        name:
                          type: string
                        default_bookmark:
                          type: string
                        head_change_id:
                          type: string
                          pattern: ^[zyxwvutsrqponmlk]{32}$
                          description: >-
                            Current change id at the default bookmark tip. On
                            empty repositories this is the virtual root change
                            id (zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz).
                        upstream:
                          anyOf:
                            - type: object
                              properties:
                                url:
                                  type: string
                                  format: uri
                                auth_kind:
                                  anyOf:
                                    - type: string
                                      enum:
                                        - token
                                        - username_password
                                    - type: 'null'
                                  description: >-
                                    Kind of credentials stored for this
                                    upstream, or null if it is public. Auth
                                    payloads are write-only — secrets are never
                                    returned.
                                latest_sync:
                                  anyOf:
                                    - type: object
                                      properties:
                                        id:
                                          type: string
                                        repo_id:
                                          type: string
                                        direction:
                                          type: string
                                          enum:
                                            - pull
                                            - push
                                        status:
                                          type: string
                                          enum:
                                            - queued
                                            - in_progress
                                            - completed
                                            - failed
                                        attempt:
                                          type: integer
                                        ref_globs:
                                          type: object
                                          properties:
                                            branches:
                                              type: string
                                            tags:
                                              type: string
                                          required:
                                            - branches
                                            - tags
                                          additionalProperties: false
                                        stats:
                                          anyOf:
                                            - type: object
                                              properties:
                                                refs:
                                                  type: array
                                                  items:
                                                    type: object
                                                    properties:
                                                      name:
                                                        type: string
                                                      before:
                                                        anyOf:
                                                          - type: string
                                                          - type: 'null'
                                                      after:
                                                        type: string
                                                      outcome:
                                                        type: string
                                                        enum:
                                                          - updated
                                                          - unchanged
                                                          - filtered
                                                          - rejected
                                                    required:
                                                      - name
                                                      - before
                                                      - after
                                                      - outcome
                                              required:
                                                - refs
                                            - type: 'null'
                                        error:
                                          anyOf:
                                            - type: string
                                            - type: 'null'
                                        created_at:
                                          type: string
                                          format: date-time
                                        started_at:
                                          anyOf:
                                            - type: string
                                              format: date-time
                                            - type: 'null'
                                        finished_at:
                                          anyOf:
                                            - type: string
                                              format: date-time
                                            - type: 'null'
                                      required:
                                        - id
                                        - repo_id
                                        - direction
                                        - status
                                        - attempt
                                        - ref_globs
                                        - stats
                                        - error
                                        - created_at
                                        - started_at
                                        - finished_at
                                    - type: 'null'
                                  description: >-
                                    Most recent sync for this upstream, or null
                                    if no sync has started yet.
                              required:
                                - url
                                - auth_kind
                                - latest_sync
                              description: >-
                                Upstream git remote configuration. Each
                                repository has at most one upstream.
                            - type: 'null'
                          description: >-
                            Upstream remote configured for this repository, or
                            null if none is configured.
                        created_at:
                          type: string
                          format: date-time
                        tags:
                          type: object
                          propertyNames:
                            type: string
                          additionalProperties:
                            type: string
                      required:
                        - id
                        - org
                        - name
                        - default_bookmark
                        - head_change_id
                        - upstream
                        - created_at
                        - tags
                required:
                  - next_cursor
                  - has_more
                  - repos
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                      message:
                        type: string
                      details:
                        type: object
                        propertyNames:
                          type: string
                        additionalProperties: {}
                      trace_id:
                        description: >-
                          Support correlation id attached to 5xx responses;
                          quote it when reporting an issue
                        type: string
                    required:
                      - code
                      - message
                required:
                  - error
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                      message:
                        type: string
                      details:
                        type: object
                        propertyNames:
                          type: string
                        additionalProperties: {}
                      trace_id:
                        description: >-
                          Support correlation id attached to 5xx responses;
                          quote it when reporting an issue
                        type: string
                    required:
                      - code
                      - message
                required:
                  - error
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                      message:
                        type: string
                      details:
                        type: object
                        propertyNames:
                          type: string
                        additionalProperties: {}
                      trace_id:
                        description: >-
                          Support correlation id attached to 5xx responses;
                          quote it when reporting an issue
                        type: string
                    required:
                      - code
                      - message
                required:
                  - error
        '404':
          description: Not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                      message:
                        type: string
                      details:
                        type: object
                        propertyNames:
                          type: string
                        additionalProperties: {}
                      trace_id:
                        description: >-
                          Support correlation id attached to 5xx responses;
                          quote it when reporting an issue
                        type: string
                    required:
                      - code
                      - message
                required:
                  - error
        '406':
          description: Not acceptable
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                      message:
                        type: string
                      details:
                        type: object
                        propertyNames:
                          type: string
                        additionalProperties: {}
                      trace_id:
                        description: >-
                          Support correlation id attached to 5xx responses;
                          quote it when reporting an issue
                        type: string
                    required:
                      - code
                      - message
                required:
                  - error
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                      message:
                        type: string
                      details:
                        type: object
                        propertyNames:
                          type: string
                        additionalProperties: {}
                      trace_id:
                        description: >-
                          Support correlation id attached to 5xx responses;
                          quote it when reporting an issue
                        type: string
                    required:
                      - code
                      - message
                required:
                  - error
        '500':
          description: Internal error
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                      message:
                        type: string
                      details:
                        type: object
                        propertyNames:
                          type: string
                        additionalProperties: {}
                      trace_id:
                        description: >-
                          Support correlation id attached to 5xx responses;
                          quote it when reporting an issue
                        type: string
                    required:
                      - code
                      - message
                required:
                  - error
components:
  securitySchemes:
    apiKey:
      type: http
      scheme: bearer
      bearerFormat: API Key

````