Sonar Projects API

Project search and management within organizations

OpenAPI Specification

sonar-projects-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: SonarCloud Issues Projects API
  description: The SonarCloud API provides HTTP endpoints for programmatic interaction with SonarCloud — Sonar's cloud-based code quality and security analysis service. It enables management of organizations, projects, quality gates, issues, and analysis integrations with GitHub, GitLab, Bitbucket, and Azure DevOps. Token-based authentication is required for all endpoints.
  version: 1.0.0
  contact:
    name: SonarSource
    url: https://community.sonarsource.com/
  license:
    name: GNU Lesser General Public License v3.0
    url: https://www.gnu.org/licenses/lgpl-3.0.html
servers:
- url: https://sonarcloud.io/api
  description: SonarCloud API
tags:
- name: Projects
  description: Project search and management within organizations
paths:
  /projects/search:
    get:
      operationId: searchProjects
      summary: Search Projects
      description: Search for projects within an organization on SonarCloud. Returns project details including last analysis date, quality gate status, and language breakdown.
      tags:
      - Projects
      parameters:
      - name: organization
        in: query
        required: true
        description: Organization key
        schema:
          type: string
      - name: q
        in: query
        description: Search query for project name or key
        schema:
          type: string
      - name: qualitygate
        in: query
        description: Filter by quality gate name
        schema:
          type: string
      - name: p
        in: query
        description: Page number
        schema:
          type: integer
          default: 1
      - name: ps
        in: query
        description: Page size
        schema:
          type: integer
          default: 100
      security:
      - bearerAuth: []
      responses:
        '200':
          description: Successfully retrieved projects
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProjectSearchResponse'
        '401':
          description: Unauthorized
components:
  schemas:
    Paging:
      type: object
      properties:
        pageIndex:
          type: integer
        pageSize:
          type: integer
        total:
          type: integer
    Project:
      type: object
      properties:
        key:
          type: string
          description: Project key
        name:
          type: string
          description: Project display name
        qualifier:
          type: string
          enum:
          - TRK
          - APP
          - VW
        visibility:
          type: string
          enum:
          - public
          - private
        lastAnalysisDate:
          type: string
          format: date-time
        revision:
          type: string
        organization:
          type: string
          description: Organization key
    ProjectSearchResponse:
      type: object
      properties:
        paging:
          $ref: '#/components/schemas/Paging'
        components:
          type: array
          items:
            $ref: '#/components/schemas/Project'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: SonarCloud user token. Generate at https://sonarcloud.io/account/security. Pass as Bearer token or as basic auth username with empty password.