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

# List projects

> List every non-deleted project the API key's organization owns.



## OpenAPI

````yaml /api-reference/openapi.json get /api/v1/projects
openapi: 3.0.0
info:
  contact:
    email: support@linguolink.dev
    name: LinguLink Support
  description: Translation management API for LinguLink platform
  license:
    name: MIT
    url: https://opensource.org/licenses/MIT
  title: LinguLink API v1
  version: 1.0.0
servers:
  - description: Development server
    url: http://localhost:3000
  - description: Production server
    url: https://linguolink.dev
security: []
tags:
  - description: API key authentication and validation
    name: Authentication
  - description: API key management operations
    name: API Keys
  - description: Translation management operations
    name: Translations
  - description: Endpoints the `lingulink` CLI's pull/push commands call
    name: CLI
  - description: Project metadata and translation coverage
    name: Projects
paths:
  /api/v1/projects:
    get:
      tags:
        - Projects
      summary: List projects
      description: List every non-deleted project the API key's organization owns.
      operationId: listProjects
      responses:
        '200':
          content:
            application/json:
              example:
                data:
                  - baseLanguage: en
                    id: 5f9c2b9e-3b7a-4c2a-9c37-8e6f8d6a9b10
                    languages:
                      - en
                      - de
                      - tr
                    name: Marketing Site
                  - baseLanguage: en
                    id: 7a1e4c2a-9c37-4b7a-8e6f-3b7a5f9c2b9e
                    languages:
                      - en
                    name: Docs
                success: true
              schema:
                type: object
          description: Every non-deleted project the API key's organization owns.
        '401':
          $ref: '#/components/responses/Unauthorized'
        '500':
          $ref: '#/components/responses/InternalServerError'
      security:
        - BearerAuth: []
        - OAuth2: []
components:
  responses:
    Unauthorized:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
      description: Authentication required
    InternalServerError:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
      description: Internal server error
  schemas:
    Error:
      properties:
        details:
          description: Additional error details (development only)
          type: string
        error:
          description: Error message
          type: string
        timestamp:
          description: Error timestamp
          format: date-time
          type: string
      required:
        - error
      type: object
  securitySchemes:
    BearerAuth:
      bearerFormat: API Key
      description: 'Enter your API key in the format: Bearer <api_key>'
      scheme: bearer
      type: http
    OAuth2:
      description: >-
        Exchange your API key (as client_secret) for a short-lived access token.
        The playground fetches and applies the token automatically.
      flows:
        clientCredentials:
          scopes:
            admin: Administrate translations and API keys
            export:read: Export translations
            translations:read: Read translations
            translations:write: Create or update translations
          tokenUrl: https://linguolink.dev/api/v1/auth/token
      type: oauth2

````