AirMDR User Group API

Endpoints to manage user groups

Operations 5

POST /usergroup create user group #
POST /usergroup/filter filter user groups #
GET /usergroup/{user_group_id} get user group #
PATCH /usergroup/{user_group_id} update user group #
DELETE /usergroup/{user_group_id} delete user group #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/airmdr:airmdr-user-group-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

airmdr-user-group-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: User Management Service User Group API
  version: 1.0.0
  description: Endpoints to manage user groups
servers:
- url: /airmdrapi
tags:
- name: User Group
  description: Endpoints to manage user groups
paths:
  /usergroup:
    post:
      tags:
      - User Group
      operationId: createUserGroupAPI
      summary: create user group
      description: Creates a user group. This group can only be granted access to descendant organizations. Only users from the same parent organization can be added to the user group. This action can only be performed by superadmin or admin accounts.
      parameters:
      - name: User-ID
        in: header
        description: The User ID of the requestor. If requests are made through API Gateway, this header will be pre filled.
        schema:
          type: string
      - name: Organization-ID
        in: header
        description: The Organization ID of the requestor. If requests are made through API Gateway, this header will be pre filled.
        schema:
          type: string
      - name: X-Request-ID
        in: header
        description: The ID associated with the request. If requests are made through API Gateway, this header will be pre filled.
        schema:
          type: string
      security:
      - SessionCookie: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateUserGroupRequest'
      responses:
        '201':
          description: user group created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateUserGroupResponse'
        '403':
          description: forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/403Error'
        '409':
          description: conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        default:
          description: unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /usergroup/filter:
    post:
      tags:
      - User Group
      operationId: filterUserGroupsAPI
      summary: filter user groups
      description: Filter user groups by organization ids and user ids accessible to the logged in user. If no filter is provided, all user groups in all accessible organizations are returned. This action can only be performed by superadmin or admin accounts.
      parameters:
      - name: User-ID
        in: header
        description: The User ID of the requestor. If requests are made through API Gateway, this header will be pre filled.
        schema:
          type: string
      - name: Organization-ID
        in: header
        description: The Organization ID of the requestor. If requests are made through API Gateway, this header will be pre filled.
        schema:
          type: string
      - name: X-Request-ID
        in: header
        description: The ID associated with the request. If requests are made through API Gateway, this header will be pre filled.
        schema:
          type: string
      - name: page
        in: query
        required: true
        description: Page number for paginated results.
        schema:
          type: integer
      - name: size
        in: query
        required: true
        description: Number of results per page.
        schema:
          type: integer
      security:
      - SessionCookie: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FilterUserGroupRequest'
      responses:
        '200':
          description: all user groups fetched successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListUserGroupResponse'
        '403':
          description: forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/403Error'
        default:
          description: unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /usergroup/{user_group_id}:
    get:
      tags:
      - User Group
      operationId: getUserGroupAPI
      summary: get user group
      description: Get details of a user group. This action can only be performed by superadmin or admin accounts.
      parameters:
      - name: User-ID
        in: header
        description: The User ID of the requestor. If requests are made through API Gateway, this header will be pre filled.
        schema:
          type: string
      - name: Organization-ID
        in: header
        description: The Organization ID of the requestor. If requests are made through API Gateway, this header will be pre filled.
        schema:
          type: string
      - name: X-Request-ID
        in: header
        description: The ID associated with the request. If requests are made through API Gateway, this header will be pre filled.
        schema:
          type: string
      - name: user_group_id
        in: path
        description: The ID of the user group to update
        required: true
        schema:
          type: string
      security:
      - SessionCookie: []
      responses:
        '200':
          description: user group updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetUserGroupResponse'
        '403':
          description: forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/403Error'
        default:
          description: unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    patch:
      tags:
      - User Group
      operationId: updateUserGroupAPI
      summary: update user group
      description: Updates a user group. This group can only be granted access to descendant organizations. Only users from the same parent organization can be added to the user group. This action can only be performed by superadmin or admin accounts.
      parameters:
      - name: User-ID
        in: header
        description: The User ID of the requestor. If requests are made through API Gateway, this header will be pre filled.
        schema:
          type: string
      - name: Organization-ID
        in: header
        description: The Organization ID of the requestor. If requests are made through API Gateway, this header will be pre filled.
        schema:
          type: string
      - name: X-Request-ID
        in: header
        description: The ID associated with the request. If requests are made through API Gateway, this header will be pre filled.
        schema:
          type: string
      - name: user_group_id
        in: path
        description: The ID of the user group to update
        required: true
        schema:
          type: string
      security:
      - SessionCookie: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateUserGroupRequest'
      responses:
        '200':
          description: user group updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateUserGroupResponse'
        '403':
          description: forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/403Error'
        '409':
          description: conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        default:
          description: unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    delete:
      tags:
      - User Group
      operationId: deleteUserGroupAPI
      summary: delete user group
      description: Deletes a user group. This action can only be performed by superadmin or admin accounts.
      parameters:
      - name: User-ID
        in: header
        description: The User ID of the requestor. If requests are made through API Gateway, this header will be pre filled.
        schema:
          type: string
      - name: Organization-ID
        in: header
        description: The Organization ID of the requestor. If requests are made through API Gateway, this header will be pre filled.
        schema:
          type: string
      - name: X-Request-ID
        in: header
        description: The ID associated with the request. If requests are made through API Gateway, this header will be pre filled.
        schema:
          type: string
      - name: user_group_id
        in: path
        description: The ID of the user group to update
        required: true
        schema:
          type: string
      security:
      - SessionCookie: []
      responses:
        '200':
          description: user group deleted successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteUserGroupResponse'
        '403':
          description: forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/403Error'
        default:
          description: unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    UserGroupType:
      type: string
      enum:
      - default
      - admin
      - custom
      x-enum-varnames:
      - UserGroupTypeDefault
      - UserGroupTypeAdmin
      - UserGroupTypeCustom
    UserMinimal:
      type: object
      required:
      - user_id
      - first_name
      - last_name
      properties:
        user_id:
          type: string
        first_name:
          type: string
        last_name:
          type: string
    ListUserGroupFilter:
      type: object
      properties:
        search:
          type: string
          description: search key for user group name
        accessible_organization_list:
          type: array
          items:
            $ref: '#/components/schemas/AccessibleOrganizationsFilterRequest'
          description: The list of organization IDs which can be accessed by user groups returning groups having atleast one accessible organization with required permissions
        user_id_list:
          type: array
          items:
            type: string
          description: The list of user IDs which belong to the user group.
        parent_organization_id_list:
          type: array
          items:
            type: string
          description: The list of organization IDs in which the user group was created.
        exclude_parent_organization_groups:
          type: boolean
          description: If true, also returns user groups owned by ancestor / ASO / ARO organizations that the caller can act on (e.g. to assign cases to a parent team), in addition to groups owned by the caller's own accessible organizations. If false or omitted, only groups owned by the caller's own accessible organizations are returned. The default value is false. Regardless of this flag, each group's accessible organizations are always trimmed to those the caller is permitted to see.
        no_organization_linked:
          type: boolean
          description: Fetch user groups which do not have access to any organization.
        no_user_present:
          type: boolean
          description: Fetch user groups which do not have any users.
        user_group_types:
          type: array
          items:
            $ref: '#/components/schemas/UserGroupType'
          description: List of user group types for which information is to be retrieved.
        category_names:
          type: array
          items:
            type: string
          description: List of category names which user group have access to.
        permissions:
          type: array
          items:
            type: string
          description: List of permissions which user group have access to.
    AccessibleOrganizationsRequest:
      type: object
      required:
      - organization_id
      properties:
        organization_id:
          type: string
        select_all_child_orgs:
          type: boolean
        include_current_organization:
          type: boolean
          description: If false, user group does not include current organization id. The default value is true.
    FilterUserGroupRequest:
      type: object
      properties:
        filter:
          $ref: '#/components/schemas/ListUserGroupFilter'
        sort:
          type: array
          items:
            $ref: '#/components/schemas/SortFields'
    Error:
      type: object
      required:
      - message
      properties:
        message:
          type: string
          description: user friendly error message
    OrganizationMinimalWithUserGroupConfig:
      type: object
      required:
      - organization_id
      - name
      - code
      properties:
        organization_id:
          type: string
          description: unique id of the organization
        name:
          type: string
          description: name of the organization
        code:
          type: string
          description: code of the organization
        select_all_child_orgs:
          type: boolean
          description: flag if the user group needs to be mapped to future child organizations of this organization
        include_current_organization:
          type: boolean
          description: If false, user group does not include current organization id. The default value is true.
    SortOrder:
      type: integer
      enum:
      - 0
      - 1
      x-enum-varnames:
      - Asc
      - Desc
    UserGroupListItem:
      type: object
      required:
      - user_group_id
      - name
      - type
      - users
      - accessible_organizations
      - parent_organization
      - created_at
      - created_by
      - modified_at
      properties:
        user_group_id:
          type: string
        name:
          type: string
        description:
          type: string
        type:
          $ref: '#/components/schemas/UserGroupType'
        users:
          type: array
          items:
            $ref: '#/components/schemas/UserMinimal'
        accessible_organizations:
          type: array
          items:
            $ref: '#/components/schemas/OrganizationMinimalWithUserGroupConfig'
        parent_organization:
          $ref: '#/components/schemas/OrganizationMinimal'
        created_at:
          type: integer
          format: int64
        created_by:
          type: string
        modified_at:
          type: integer
          format: int64
    SortFields:
      type: object
      required:
      - field
      - sort_order
      properties:
        field:
          type: string
          description: indicates which field will be used for sorting
        sort_order:
          $ref: '#/components/schemas/SortOrder'
          description: indicates sort order - asc or desc
    UpdateUserGroupRequest:
      type: object
      properties:
        name:
          type: string
          description: name of the user group
        description:
          type: string
          description: description of the user group
        user_ids:
          type: array
          description: list of id of the users to add to the user group
          items:
            type: string
        accessible_organizations:
          type: array
          description: list of organization ids and future child organizations setting the user group will have access to
          items:
            $ref: '#/components/schemas/AccessibleOrganizationsRequest'
        can_assign_cases:
          type: boolean
          description: flag indicating whether cases can be assigned to user group
        case_categories:
          type: array
          description: list of case catgeory names which can be assigned to users of the group
          items:
            type: string
        features:
          type: array
          description: list of features and the permissions for the same to be added to the user group
          items:
            $ref: '#/components/schemas/FeaturePermission'
    FeaturePermission:
      type: object
      required:
      - feature_id
      - can_read
      - can_write
      properties:
        feature_id:
          type: string
          description: id of the feature
        can_read:
          type: boolean
          default: true
          description: flag indicating whether the user group can read the feature
        can_write:
          type: boolean
          default: false
          description: flag indicating whether the user group can write the feature
    UserGroup:
      type: object
      allOf:
      - $ref: '#/components/schemas/UserGroupListItem'
      - properties:
          can_assign_cases:
            type: boolean
            description: flag indicating whether cases can be assigned to user group
          case_categories:
            type: array
            description: list of case categorie names which are assigned to user group
            items:
              type: string
          features:
            type: array
            description: list of features and the permissions for the same to be added to the user group
            items:
              $ref: '#/components/schemas/FeaturePermission'
    UpdateUserGroupResponse:
      type: object
      required:
      - message
      - data
      properties:
        message:
          type: string
        data:
          $ref: '#/components/schemas/UserGroup'
          description: user group object
    AccessibleOrganizationsFilterRequest:
      type: object
      required:
      - organization_id
      properties:
        organization_id:
          type: string
    DeleteUserGroupResponse:
      type: object
      required:
      - message
      properties:
        message:
          type: string
    CreateUserGroupRequest:
      type: object
      required:
      - name
      - parent_organization_id
      properties:
        name:
          type: string
          description: name of the user group
        description:
          type: string
          description: description of the user group
        parent_organization_id:
          type: string
          description: id of the organization where the user group needs to be created
        user_ids:
          type: array
          description: list of id of the users to add to the user group
          items:
            type: string
        accessible_organizations:
          type: array
          description: list of organization ids and future child organizations setting the user group will have access to
          items:
            $ref: '#/components/schemas/AccessibleOrganizationsRequest'
        can_assign_cases:
          type: boolean
          description: flag indicating whether cases can be assigned to user group
        case_categories:
          type: array
          description: list of case catgeory names which can be assigned to users of the group
          items:
            type: string
        features:
          type: array
          description: list of features and the permissions for the same to be added to the user group
          items:
            $ref: '#/components/schemas/FeaturePermission'
    403Error:
      type: object
      properties:
        message:
          type: string
          const: User does not have permission to perform this action
    GetUserGroupResponse:
      type: object
      required:
      - message
      - data
      properties:
        message:
          type: string
        data:
          $ref: '#/components/schemas/UserGroup'
          description: user group object
    ListUserGroupResponse:
      type: object
      required:
      - message
      - data
      - total
      properties:
        message:
          type: string
        data:
          type: array
          items:
            $ref: '#/components/schemas/UserGroupListItem'
        total:
          type: integer
    OrganizationMinimal:
      type: object
      required:
      - organization_id
      - name
      - code
      - sso_enabled
      properties:
        organization_id:
          type: string
          description: unique id of the organization
        name:
          type: string
          description: name of the organization
        code:
          type: string
          description: code of the organization
        logo_url:
          type: string
          description: url of the organization's logo
        sso_enabled:
          type: boolean
          description: flag indicating whether sso is enabled for the organization
  securitySchemes:
    SessionCookie:
      type: apiKey
      in: cookie
      name: Session
x-tagGroups:
- name: Included APIs
  tags:
  - Organization
  - User
  - User Group
  - Token
  - Permission