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

# Get a project

> Retrieves details about a specific Project



## OpenAPI

````yaml /openapi/qlty-api.json get /gh/{ownerKeyOrId}/projects/{keyOrId}
openapi: 3.1.0
info:
  title: Qlty API
  version: 1.0.0
  description: >-
    The Qlty API is organized around REST. It provides predictable,
    resource-oriented URLs, accepts JSON-encoded request bodies, and returns
    JSON-encoded responses.
servers:
  - url: https://api.qlty.sh
security:
  - BearerAuth: []
  - BasicAuth: []
tags:
  - name: User
    description: Operations for the authenticated user
  - name: Workspaces
    description: Operations for managing workspaces
  - name: Projects
    description: Operations for managing projects
  - name: Issues
    description: Operations for managing issues
  - name: Metrics
    description: Operations for retrieving metrics
paths:
  /gh/{ownerKeyOrId}/projects/{keyOrId}:
    get:
      tags:
        - Projects
      summary: Get a project
      description: Retrieves details about a specific Project
      operationId: getProject
      parameters:
        - name: ownerKeyOrId
          in: path
          required: true
          description: The key or ID of the Workspace that owns the Project
          schema:
            type: string
        - name: keyOrId
          in: path
          required: true
          description: The key or ID of the Project to retrieve
          schema:
            type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Project'
              example:
                id: 85fae897-5a48-483b-ad29-1852c0db1707
                workspaceId: 1c47b6fd-db56-4fbd-9cf0-4d88f9631050
                providerUrl: https://github.com/acmeco/awesome-project
                key: awesome-project
                workspaceKey: acmeco
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '404':
          $ref: '#/components/responses/NotFoundError'
        '429':
          $ref: '#/components/responses/TooManyRequestsError'
components:
  schemas:
    Project:
      type: object
      properties:
        id:
          type: string
          description: The UUID of the Project
        workspaceId:
          type: string
          description: The UUID of the Workspace this Project belongs to
        providerUrl:
          type: string
          description: >-
            URL to the Project on the provider platform (e.g., GitHub repository
            URL)
        key:
          type: string
          description: The unique key identifier for the Project
        workspaceKey:
          type: string
          description: The key of the Workspace this Project belongs to
      required:
        - id
        - workspaceId
        - providerUrl
        - key
        - workspaceKey
    ErrorBody:
      type: object
      properties:
        status:
          type: string
          description: The HTTP status code of the error
        title:
          type: string
          description: A short, human-readable summary of the error
        detail:
          type: string
          description: A detailed explanation of the error
      required:
        - status
  responses:
    BadRequestError:
      description: Bad Request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorBody'
    UnauthorizedError:
      description: Unauthorized
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorBody'
    ForbiddenError:
      description: Forbidden
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorBody'
    NotFoundError:
      description: Not Found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorBody'
    TooManyRequestsError:
      description: Too Many Requests
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorBody'
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: Generate an API token at https://qlty.sh/user/settings/tokens
    BasicAuth:
      type: http
      scheme: basic
      description: Use your API token as the username with an empty password

````