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

# List Projects

> Retrieve a list of projects for the authenticated user's company



## OpenAPI

````yaml /api-reference/openapi.json get /projects
openapi: 3.0.0
info:
  title: Corgea API
  version: 1.0.0
  description: >-
    API for interacting with Corgea's scanning and vulnerability management
    features
servers:
  - url: https://www.corgea.app/api/v1
    description: Production server
security:
  - CorgeaToken: []
  - BearerAuth: []
paths:
  /projects:
    get:
      tags:
        - Projects
      summary: List Projects
      description: Retrieve a list of projects for the authenticated user's company
      operationId: listProjects
      parameters:
        - name: name
          in: query
          required: false
          schema:
            type: string
          description: Filter projects by name (case-insensitive partial match)
        - name: tags
          in: query
          required: false
          schema:
            type: string
          description: Filter by tags (comma-separated)
          example: production,backend
        - name: repo_url
          in: query
          required: false
          schema:
            type: string
          description: Filter projects by repository URL (case-insensitive partial match)
          example: github.com/corgea/backend-api
        - name: page
          in: query
          required: false
          schema:
            type: integer
            default: 1
          description: The page number for pagination
        - name: page_size
          in: query
          required: false
          schema:
            type: integer
            default: 20
            maximum: 50
          description: The number of results per page
        - name: sort_by
          in: query
          required: false
          schema:
            type: string
            enum:
              - created_at
              - '-created_at'
              - name
              - '-name'
          description: Sort results by field (prefix with '-' for descending order)
          example: '-created_at'
      responses:
        '200':
          description: Projects retrieved successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    example: ok
                  page:
                    type: integer
                  total_pages:
                    type: integer
                  total_projects:
                    type: integer
                  projects:
                    type: array
                    items:
                      $ref: '#/components/schemas/Project'
        '401':
          description: Invalid or missing token
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    example: API key is missing
              examples:
                missing_token:
                  summary: API key header is missing
                  value:
                    error: API key is missing
                invalid_token:
                  summary: API key is invalid
                  value:
                    error: Invalid API key
components:
  schemas:
    Project:
      type: object
      properties:
        id:
          type: integer
        name:
          type: string
        description:
          type: string
        repo_url:
          type: string
          nullable: true
          description: The repository URL associated with the project, when available
        tags:
          type: array
          items:
            type: string
          description: List of tags associated with the project
        created_at:
          type: string
          format: date-time
  securitySchemes:
    CorgeaToken:
      type: apiKey
      in: header
      name: CORGEA-TOKEN
      description: API key for authentication
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: OAuth2 access token (JWT) in the Authorization header

````