Opal Security groups API

Operations related to groups

OpenAPI Specification

opal-security-groups-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  contact:
    email: hello@opal.dev
    name: Opal Team
    url: https://www.opal.dev/
  description: The Opal API is a RESTful API that allows you to interact with the Opal Security platform programmatically.
  title: Opal access-rules groups API
  version: '1.0'
servers:
- description: Production
  url: https://api.opal.dev/v1
tags:
- name: groups
  description: Operations related to groups
paths:
  /groups:
    get:
      summary: Get groups
      description: Returns a list of groups for your organization.
      operationId: getGroups
      parameters:
      - description: The pagination cursor value.
        example: cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw
        explode: true
        in: query
        name: cursor
        required: false
        schema:
          type: string
        style: form
      - description: Number of results to return per page. Default is 200.
        example: 200
        explode: true
        in: query
        name: page_size
        required: false
        schema:
          type: integer
          maximum: 1000
        style: form
      - description: The group type to filter by.
        example: OPAL_GROUP
        explode: true
        in: query
        name: group_type_filter
        required: false
        schema:
          $ref: '#/components/schemas/GroupTypeEnum'
        style: form
      - description: The group ids to filter by.
        example:
        - 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        - 1b978423-db0a-4037-a4cf-f79c60cb67b3
        explode: false
        in: query
        name: group_ids
        required: false
        schema:
          items:
            example: 1b978423-db0a-4037-a4cf-f79c60cb67b3
            format: uuid
            type: string
          type: array
        style: form
      - description: Group name.
        example: example-name
        explode: true
        in: query
        name: group_name
        required: false
        schema:
          type: string
        style: form
      - description: The IDs of the tags to filter by. Returns only groups that have any of these tags applied.
        in: query
        name: tag_ids
        required: false
        schema:
          type: array
          items:
            format: uuid
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedGroupsList'
          description: One page worth groups associated with your organization.
      security:
      - BearerAuth: []
      tags:
      - groups
    put:
      description: Bulk updates a list of groups.
      operationId: updateGroups
      requestBody:
        description: Groups to be updated
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateGroupInfoList'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateGroupInfoList'
          description: The resulting updated group infos.
      security:
      - BearerAuth: []
      tags:
      - groups
    post:
      description: Creates an Opal group or [imports a remote group](https://docs.opal.dev/reference/end-system-objects).
      operationId: createGroup
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateGroupInfo'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Group'
          description: The group just created.
      security:
      - BearerAuth: []
      tags:
      - groups
  /groups/{group_id}:
    get:
      summary: Get group by ID
      description: Returns a `Group` object.
      operationId: getGroup
      parameters:
      - description: The ID of the group.
        example: 32acc112-21ff-4669-91c2-21e27683eaa1
        explode: true
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Group'
          description: The requested `Group`.
      security:
      - BearerAuth: []
      tags:
      - groups
    delete:
      description: Deletes a group.
      operationId: delete_group
      parameters:
      - description: The ID of the group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      responses:
        '200':
          description: The group was successfully deleted.
      security:
      - BearerAuth: []
      tags:
      - groups
  /groups/{group_id}/message-channels:
    get:
      description: Gets the list of audit and reviewer message channels attached to a group.
      operationId: get_group_message_channels
      parameters:
      - description: The ID of the group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MessageChannelList'
          description: The audit and reviewer message channels attached to the group.
      security:
      - BearerAuth: []
      tags:
      - groups
    put:
      description: Sets the list of audit message channels attached to a group.
      operationId: set_group_message_channels
      parameters:
      - description: The ID of the group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MessageChannelIDList'
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  example: 1b978423-db0a-4037-a4cf-f79c60cb67b3
                  format: uuid
                  type: string
                type: array
          description: The updated audit message channel IDs for the group.
      security:
      - BearerAuth: []
      tags:
      - groups
  /groups/{group_id}/on-call-schedules:
    get:
      description: Gets the list of on call schedules attached to a group.
      operationId: get_group_on_call_schedules
      parameters:
      - description: The ID of the group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OnCallScheduleList'
          description: The on call schedules attached to the group.
      security:
      - BearerAuth: []
      tags:
      - groups
    put:
      description: Sets the list of on call schedules attached to a group.
      operationId: set_group_on_call_schedules
      parameters:
      - description: The ID of the group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OnCallScheduleIDList'
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  example: bb0197c0-5ea5-45d9-b3b7-b6c439be6435
                  format: uuid
                  type: string
                type: array
          description: The updated on call schedule IDs for the group.
      security:
      - BearerAuth: []
      tags:
      - groups
  /groups/{group_id}/resources:
    get:
      description: Gets the list of resources that the group gives access to.
      operationId: get_group_resources
      parameters:
      - description: The ID of the group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupResourceList'
          description: The resources that the group gives access to.
      security:
      - BearerAuth: []
      tags:
      - groups
    put:
      description: Sets the list of resources that the group gives access to.
      operationId: set_group_resources
      parameters:
      - description: The ID of the group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateGroupResourcesInfo'
      responses:
        '200':
          description: The group resource were successfully set.
      security:
      - BearerAuth: []
      tags:
      - groups
  /groups/{group_id}/containing-groups:
    get:
      summary: Get nested groups
      description: Gets the list of groups that the group gives access to.
      operationId: get_group_containing_groups
      parameters:
      - description: The ID of the group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      - description: The access level's remote ID to filter by.
        example: arn:aws:iam::590304332660:role/AdministratorAccess
        explode: true
        in: query
        name: access_level_remote_id
        required: false
        schema:
          type: string
        style: form
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupContainingGroupList'
          description: The groups that the group gives access to.
      security:
      - BearerAuth: []
      tags:
      - groups
    post:
      description: Creates a new containing group.
      operationId: add_group_containing_group
      parameters:
      - description: The ID of the group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GroupContainingGroup'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupContainingGroup'
          description: The created `GroupContainingGroup` object.
      security:
      - BearerAuth: []
      tags:
      - groups
  /groups/{group_id}/containing-groups/{containing_group_id}:
    get:
      summary: Get nested group by ID
      description: Gets a specific containing group for a group.
      operationId: get_group_containing_group
      parameters:
      - description: The ID of the group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      - description: The ID of the containing group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: containing_group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupContainingGroup'
          description: The created `GroupContainingGroup` object.
      security:
      - BearerAuth: []
      tags:
      - groups
    delete:
      description: Removes a containing group from a group.
      operationId: remove_group_containing_group
      parameters:
      - description: The ID of the member group to remove.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      - description: The ID of the containing group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: containing_group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      - description: The remote ID of the member group's access level to filter by.
        example: arn:aws:iam::590304332660:role/AdministratorAccess
        explode: true
        in: query
        name: access_level_remote_id
        required: false
        schema:
          type: string
        style: form
      responses:
        '204':
          description: The member group was successfully removed from the containing group.
      security:
      - BearerAuth: []
      tags:
      - groups
  /groups/{group_id}/resources/{resource_id}:
    post:
      description: Adds a resource to a group.
      operationId: add_group_resource
      parameters:
      - description: The ID of the group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      - description: The ID of the resource.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: resource_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      - description: The remote ID of the access level to grant to this user. If omitted, the default access level remote ID value (empty string) is used.
        example: arn:aws:iam::590304332660:role/AdministratorAccess
        explode: true
        in: query
        name: access_level_remote_id
        required: false
        schema:
          type: string
        style: form
        deprecated: true
      requestBody:
        required: false
        content:
          application/json:
            schema:
              example:
                access_level_remote_id: arn:aws:iam::590304332660:role/AdministratorAccess
                duration_minutes: 60
              properties:
                access_level_remote_id:
                  description: The remote ID of the access level to grant to this user. If omitted, the default access level remote ID value (empty string) is used.
                  example: arn:aws:iam::590304332660:role/AdministratorAccess
                  type: string
                duration_minutes:
                  description: The duration for which the resource can be accessed (in minutes). Use 0 to set to indefinite.
                  example: 60
                  type: integer
                  maximum: 525960
                  minimum: 0
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupResource'
          description: The created `GroupResource` object.
      security:
      - BearerAuth: []
      tags:
      - groups
  /groups/{group_id}/visibility:
    get:
      description: Gets the visibility of this group.
      operationId: get_group_visibility
      parameters:
      - description: The ID of the group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VisibilityInfo'
          description: The visibility info of this group.
      security:
      - BearerAuth: []
      tags:
      - groups
    put:
      description: Sets the visibility of this group.
      operationId: set_group_visibility
      parameters:
      - description: The ID of the group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VisibilityInfo'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VisibilityInfo'
          description: The visibility info of this group.
      security:
      - BearerAuth: []
      tags:
      - groups
  /groups/{group_id}/reviewers:
    get:
      deprecated: true
      description: Gets the list of owner IDs of the reviewers for a group.
      operationId: get_group_reviewers
      parameters:
      - description: The ID of the group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  example: 1b978423-db0a-4037-a4cf-f79c60cb67b3
                  format: uuid
                  type: string
                type: array
          description: The IDs of owners that are reviewers for this group.
      security:
      - BearerAuth: []
      tags:
      - groups
    put:
      deprecated: true
      description: Sets the list of reviewers for a group.
      operationId: set_group_reviewers
      parameters:
      - description: The ID of the group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReviewerIDList'
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  example: 1b978423-db0a-4037-a4cf-f79c60cb67b3
                  format: uuid
                  type: string
                type: array
          description: The updated IDs of owners that are reviewers for this group
      security:
      - BearerAuth: []
      tags:
      - groups
  /groups/{group_id}/reviewer-stages:
    get:
      deprecated: true
      description: Gets the list of reviewer stages for a group.
      operationId: get_group_reviewer_stages
      parameters:
      - description: The ID of the group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      responses:
        '200':
          content:
            application/json:
              schema:
                description: A list of reviewer stages.
                items:
                  $ref: '#/components/schemas/ReviewerStage'
                type: array
          description: The reviewer stages for this group.
      security:
      - BearerAuth: []
      tags:
      - groups
    put:
      deprecated: true
      description: Sets the list of reviewer stages for a group.
      operationId: set_group_reviewer_stages
      parameters:
      - description: The ID of the group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReviewerStageList'
      responses:
        '200':
          content:
            application/json:
              schema:
                description: A list of reviewer stages.
                items:
                  $ref: '#/components/schemas/ReviewerStage'
                type: array
          description: The updated reviewer stages for this group.
      security:
      - BearerAuth: []
      tags:
      - groups
  /groups/{group_id}/tags:
    get:
      description: Returns all tags applied to the group.
      operationId: get_group_tags
      parameters:
      - description: The ID of the group whose tags to return.
        name: group_id
        example: 1b978423-db0a-4037-a4cf-f79c60cb67b3
        explode: false
        in: path
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TagsList'
          description: The tags applied to the group.
      security:
      - BearerAuth: []
      tags:
      - groups
  /groups/{group_id}/users:
    get:
      description: Gets the list of users for this group.
      operationId: get_group_users
      parameters:
      - description: The ID of the group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      - description: The pagination cursor value.
        example: cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw
        explode: true
        in: query
        name: cursor
        required: false
        schema:
          type: string
        style: form
      - description: Number of results to return per page, up to 1000. When set (or when a cursor is provided), the response contains a single page of results and a `next` cursor; the default page size is 200. When both page_size and cursor are omitted, the entire group membership is returned in one response with no `next` cursor. For large groups, prefer setting page_size and following `next`.
        example: 200
        explode: true
        in: query
        name: page_size
        required: false
        schema:
          type: integer
          maximum: 1000
        style: form
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupUserList'
          description: List of users with access to this group.
      security:
      - BearerAuth: []
      tags:
      - groups
  /groups/{group_id}/users/{user_id}:
    put:
      description: Updates a user's access level or duration in this group.
      operationId: update_group_user
      parameters:
      - description: The ID of the group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      - description: The ID of the user whose access is being updated.
        example: f92aa855-cea9-4814-b9d8-f2a60d3e4a06
        in: path
        name: user_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              example:
                duration_minutes: 60
                access_level_remote_id: arn:aws:iam::590304332660:role/AdministratorAccess
              properties:
                duration_minutes:
                  description: The updated duration for which the group can be accessed (in minutes). Use 0 for indefinite, or a negative value to revoke access.
                  type: integer
                  maximum: 525960
                  example: 120
                access_level_remote_id:
                  description: The updated remote ID of the access level granted to this user.
                  type: string
                  example: arn:aws:iam::590304332660:role/ReadOnlyAccess
              required:
              - duration_minutes
      responses:
        '200':
          description: The GroupUser was successfully updated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupUser'
      security:
      - BearerAuth: []
      tags:
      - groups
    post:
      description: Adds a user to this group.
      operationId: add_group_user
      parameters:
      - description: The ID of the group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      - description: The ID of the user to add.
        example: f92aa855-cea9-4814-b9d8-f2a60d3e4a06
        explode: false
        in: path
        name: user_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      - description: The duration for which the group can be accessed (in minutes). Use 0 to set to indefinite.
        example: 60
        explode: true
        in: query
        name: duration_minutes
        required: false
        schema:
          type: integer
          maximum: 525960
        style: form
        deprecated: true
      - description: The remote ID of the access level to grant to this user. If omitted, the default access level remote ID value (empty string) is used.
        example: arn:aws:iam::590304332660:role/AdministratorAccess
        explode: true
        in: query
        name: access_level_remote_id
        required: false
        schema:
          type: string
        style: form
        deprecated: true
      requestBody:
        required: false
        content:
          application/json:
            schema:
              example:
                duration_minutes: 60
                access_level_remote_id: arn:aws:iam::590304332660:role/AdministratorAccess
              properties:
                duration_minutes:
                  description: The duration for which the group can be accessed (in minutes). Use 0 to set to indefinite.
                  example: 60
                  type: integer
                access_level_remote_id:
                  description: The remote ID of the access level to grant to this user. If omitted, the default access level remote ID value (empty string) is used.
                  example: arn:aws:iam::590304332660:role/AdministratorAccess
                  type: string
              required:
              - duration_minutes
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupUser'
          description: The GroupUser that was created.
      security:
      - BearerAuth: []
      tags:
      - groups
    delete:
      description: Removes a user's access from this group.
      operationId: delete_group_user
      parameters:
      - description: The ID of the group.
        example: 4baf8423-db0a-4037-a4cf-f79c60cb67a5
        explode: false
        in: path
        name: group_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      - description: The ID of a user to remove from this group.
        example: f92aa855-cea9-4814-b9d8-f2a60d3e4a06
        explode: false
        in: path
        name: user_id
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      - description: The remote ID of the access level for which this user has direct access. If omitted, the default access level remote ID value (empty string) is assumed.
        example: 30
        explode: true
        in: query
        name: access_level_remote_id
        required: false
        schema:
          type: string
        style: form
      responses:
        '200':
          description: This user's access was successfully removed from this group.
      security:
      - BearerAuth: []
      tags:
      - groups
  /groups/users/{user_id}:
    get:
      description: Returns all groups that the user is a member of.
      operationId: get_user_groups
      parameters:
      - description: The ID of the user whose groups to return.
        name: user_id
        example: 1b978423-db0a-4037-a4cf-f79c60cb67b3
        explode: false
        in: path
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      - description: The pagination cursor value.
        example: cD0yMDIxLTAxLTA2KzAzJTNBMjQlM0E1My40MzQzMjYlMkIwMCUzQTAw
        explode: true
        in: query
        name: cursor
        required: false
        schema:
          type: string
        style: form
      - description: Number of results to return per page. Default is 200.
        example: 200
        explode: true
        in: query
        name: page_size
        required: false
        schema:
          type: integer
          maximum: 1000
        style: form
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupUserList'
          description: The groups that the user is a member of.
      security:
      - BearerAuth: []
      tags:
      - groups
components:
  schemas:
    ResourceAccessLevel:
      description: '# Access Level Object

        ### Description

        The `AccessLevel` object is used to represent the level of access that a principal has. The "default" access

        level is a `AccessLevel` object whose fields are all empty strings.


        ### Usage Example

        View the `AccessLevel` of a resource/user or resource/group pair to see the level of access granted to the resource.'
      example:
        access_level_name: AdminRole
        access_level_remote_id: arn:aws:iam::590304332660:role/AdministratorAccess
      properties:
        access_level_name:
          description: The human-readable name of the access level.
          example: AdminRole
          type: string
        access_level_remote_id:
          description: The machine-readable identifier of the access level.
          example: arn:aws:iam::590304332660:role/AdministratorAccess
          type: string
      required:
      - access_level_name
      - access_level_remote_id
      type: object
    OnCallScheduleProviderEnum:
      description: The third party provider of the on call schedule.
      enum:
      - OPSGENIE
      - PAGER_DUTY
      example: PAGER_DUTY
      type: string
    CreateGroupInfo:
      description: '# CreateGroupInfo Object

        ### Description

        The `CreateGroupInfo` object is used to store creation info for a group.


        ### Usage Example

        Use in the `POST Groups` endpoint.'
      example:
        remote_group_id: 00g4fixjd6Bc9w0TT5d7
        name: Engineering Team
        description: Engineering team Okta

# --- truncated at 32 KB (91 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/opal-security/refs/heads/main/openapi/opal-security-groups-api-openapi.yml