SonarSource user_groups API

Manage user groups.

OpenAPI Specification

sonarsource-user-groups-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: SonarQube Cloud Web authentication user_groups API
  version: v1
  description: The SonarQube Cloud Web API, derived faithfully from the machine-readable service catalog the instance publishes at /api/webservices/list.
  x-derived-from: https://sonarcloud.io/api/webservices/list
  contact:
    name: SonarSource
    url: https://community.sonarsource.com/
servers:
- url: https://sonarcloud.io
security:
- bearerToken: []
- basicToken: []
tags:
- name: user_groups
  description: Manage user groups.
paths:
  /api/user_groups/add_user:
    post:
      operationId: userGroupsAddUser
      summary: 'Add a user to a group. ''id'' or ''name'' must be provided. Requires the following permission: ''Administer System''.'
      description: 'Add a user to a group. ''id'' or ''name'' must be provided. Requires the following permission: ''Administer System''.'
      tags:
      - user_groups
      parameters:
      - name: id
        in: query
        description: Group id
        required: false
        schema:
          type: string
        example: '42'
      - name: login
        in: query
        description: User login
        required: false
        schema:
          type: string
        example: g.hopper
      - name: name
        in: query
        description: Group name
        required: false
        schema:
          type: string
        example: sonar-administrators
      - name: organization
        in: query
        description: Key of organization
        required: false
        schema:
          type: string
        example: my-org
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized - authentication required
        '403':
          description: Insufficient privileges
        '404':
          description: Not Found
  /api/user_groups/create:
    post:
      operationId: userGroupsCreate
      summary: 'Create a group. Requires the following permission: ''Administer System''.'
      description: 'Create a group. Requires the following permission: ''Administer System''.'
      tags:
      - user_groups
      parameters:
      - name: description
        in: query
        description: Description for the new group. A group description cannot be larger than 200 characters.
        required: false
        schema:
          type: string
          maxLength: 200
        example: Default group for new users
      - name: name
        in: query
        description: Name for the new group. A group name cannot be larger than 255 characters and must be unique. The value 'anyone' (whatever the case) is reserved and cannot be used.
        required: true
        schema:
          type: string
          maxLength: 255
        example: sonar-users
      - name: organization
        in: query
        description: Key of organization
        required: true
        schema:
          type: string
        example: my-org
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized - authentication required
        '403':
          description: Insufficient privileges
        '404':
          description: Not Found
  /api/user_groups/delete:
    post:
      operationId: userGroupsDelete
      summary: Delete a group. The default groups cannot be deleted. 'id' or 'name' must be provided. Requires the following permiss...
      description: 'Delete a group. The default groups cannot be deleted. ''id'' or ''name'' must be provided. Requires the following permission: ''Administer System''.'
      tags:
      - user_groups
      parameters:
      - name: id
        in: query
        description: Group id
        required: false
        schema:
          type: string
        example: '42'
      - name: name
        in: query
        description: Group name
        required: false
        schema:
          type: string
        example: sonar-administrators
      - name: organization
        in: query
        description: Key of organization
        required: false
        schema:
          type: string
        example: my-org
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized - authentication required
        '403':
          description: Insufficient privileges
        '404':
          description: Not Found
  /api/user_groups/remove_user:
    post:
      operationId: userGroupsRemoveUser
      summary: 'Remove a user from a group. ''id'' or ''name'' must be provided. Requires the following permission: ''Administer System''.'
      description: 'Remove a user from a group. ''id'' or ''name'' must be provided. Requires the following permission: ''Administer System''.'
      tags:
      - user_groups
      parameters:
      - name: id
        in: query
        description: Group id
        required: false
        schema:
          type: string
        example: '42'
      - name: login
        in: query
        description: User login
        required: false
        schema:
          type: string
        example: g.hopper
      - name: name
        in: query
        description: Group name
        required: false
        schema:
          type: string
        example: sonar-administrators
      - name: organization
        in: query
        description: Key of organization
        required: false
        schema:
          type: string
        example: my-org
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized - authentication required
        '403':
          description: Insufficient privileges
        '404':
          description: Not Found
  /api/user_groups/search:
    get:
      operationId: userGroupsSearch
      summary: 'Search for user groups. Requires the following permission: ''Administer System''.'
      description: 'Search for user groups. Requires the following permission: ''Administer System''.'
      tags:
      - user_groups
      parameters:
      - name: f
        in: query
        description: Comma-separated list of the fields to be returned in response. All the fields are returned by default.
        required: false
        schema:
          type: string
          enum:
          - name
          - description
          - membersCount
      - name: organization
        in: query
        description: Key of organization
        required: true
        schema:
          type: string
        example: my-org
      - name: p
        in: query
        description: 1-based page number
        required: false
        schema:
          type: string
          default: '1'
        example: '42'
      - name: ps
        in: query
        description: Page size. Must be greater than 0 and less or equal than 500
        required: false
        schema:
          type: string
          default: '100'
        example: '20'
      - name: q
        in: query
        description: Limit search to names that contain the supplied string.
        required: false
        schema:
          type: string
        example: sonar-users
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized - authentication required
        '403':
          description: Insufficient privileges
        '404':
          description: Not Found
  /api/user_groups/update:
    post:
      operationId: userGroupsUpdate
      summary: 'Update a group. Requires the following permission: ''Administer System''.'
      description: 'Update a group. Requires the following permission: ''Administer System''.'
      tags:
      - user_groups
      parameters:
      - name: description
        in: query
        description: New optional description for the group. A group description cannot be larger than 200 characters. If value is not defined, then description is not changed.
        required: false
        schema:
          type: string
          maxLength: 200
        example: Default group for new users
      - name: id
        in: query
        description: Identifier of the group.
        required: true
        schema:
          type: string
        example: '42'
      - name: name
        in: query
        description: New optional name for the group. A group name cannot be larger than 255 characters and must be unique. Value 'anyone' (whatever the case) is reserved and cannot be used. If value is empty or not defined, then name is not changed.
        required: false
        schema:
          type: string
          maxLength: 255
        example: my-group
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized - authentication required
        '403':
          description: Insufficient privileges
        '404':
          description: Not Found
  /api/user_groups/users:
    get:
      operationId: userGroupsUsers
      summary: 'Search for users with membership information with respect to a group. Requires the following permission: ''Administer ...'
      description: 'Search for users with membership information with respect to a group. Requires the following permission: ''Administer System''.'
      tags:
      - user_groups
      parameters:
      - name: id
        in: query
        description: Group id
        required: false
        schema:
          type: string
        example: '42'
      - name: name
        in: query
        description: Group name
        required: false
        schema:
          type: string
        example: sonar-administrators
      - name: organization
        in: query
        description: Key of organization
        required: false
        schema:
          type: string
        example: my-org
      - name: p
        in: query
        description: 1-based page number
        required: false
        schema:
          type: string
          default: '1'
        example: '42'
      - name: ps
        in: query
        description: Page size. Must be greater than 0.
        required: false
        schema:
          type: string
          default: '25'
        example: '20'
      - name: q
        in: query
        description: Limit search to names or logins that contain the supplied string.
        required: false
        schema:
          type: string
        example: freddy
      - name: selected
        in: query
        description: Depending on the value, show only selected items (selected=selected), deselected items (selected=deselected), or all items with their selection status (selected=all).
        required: false
        schema:
          type: string
          enum:
          - all
          - deselected
          - selected
          default: selected
      responses:
        '200':
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized - authentication required
        '403':
          description: Insufficient privileges
        '404':
          description: Not Found
components:
  securitySchemes:
    bearerToken:
      type: http
      scheme: bearer
      description: User token as Bearer token.
    basicToken:
      type: http
      scheme: basic
      description: User token as HTTP Basic username with empty password.