openapi: 3.0.1 info: title: Miro Developer Platform AI Interaction Logs User groups API version: v2.0 description: ' ### Miro Developer Platform concepts - New to the Miro Developer Platform? Interested in learning more about platform concepts?? [Read our introduction page](https://beta.developers.miro.com/docs/introduction) and familiarize yourself with the Miro Developer Platform capabilities in a few minutes. ### Getting started with the Miro REST API - [Quickstart (video):](https://beta.developers.miro.com/docs/try-out-the-rest-api-in-less-than-3-minutes) try the REST API in less than 3 minutes. - [Quickstart (article):](https://beta.developers.miro.com/docs/build-your-first-hello-world-app-1) get started and try the REST API in less than 3 minutes. ### Miro REST API tutorials Check out our how-to articles with step-by-step instructions and code examples so you can: - [Get started with OAuth 2.0 and Miro](https://beta.developers.miro.com/docs/getting-started-with-oauth) ### Miro App Examples Clone our [Miro App Examples repository](https://github.com/miroapp/app-examples) to get inspiration, customize, and explore apps built on top of Miro''s Developer Platform 2.0. ' servers: - url: https://api.miro.com/ tags: - name: User groups paths: /v2/orgs/{org_id}/groups: get: description: Retrieves the list of user groups in an organization.

Required scope

organizations:groups:read

Rate limiting

Level 1

Enterprise only

This API is available only for Enterprise plan users. You can only use this endpoint if you have the role of a Company Admin. You can request temporary access to Enterprise APIs using this form.

operationId: enterprise-get-groups parameters: - $ref: '#/components/parameters/pathOrgId' - $ref: '#/components/parameters/queryLimitGroups' - $ref: '#/components/parameters/queryCursorGroups' responses: '200': content: application/json: schema: $ref: '#/components/schemas/GroupsPage' description: Page of user groups '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '429': $ref: '#/components/responses/429' summary: List of user groups tags: - User groups post: description: Creates a new user group in an organization.

Required scope

organizations:groups:write

Rate limiting

Level 1

Enterprise only

This API is available only for Enterprise plan users. You can only use this endpoint if you have the role of a Company Admin. You can request temporary access to Enterprise APIs using this form.

operationId: enterprise-create-group parameters: - $ref: '#/components/parameters/pathOrgId' requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateGroupRequest' required: true responses: '201': content: application/json: schema: $ref: '#/components/schemas/Group' description: User group '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '409': $ref: '#/components/responses/409' '429': $ref: '#/components/responses/429' summary: Create user group tags: - User groups /v2/orgs/{org_id}/groups/{group_id}: get: description: Retrieves a user group in an organization.

Required scope

organizations:groups:read

Rate limiting

Level 1

Enterprise only

This API is available only for Enterprise plan users. You can only use this endpoint if you have the role of a Company Admin. You can request temporary access to Enterprise APIs using this form.

operationId: enterprise-get-group parameters: - $ref: '#/components/parameters/pathOrgId' - $ref: '#/components/parameters/pathGroupId' responses: '200': content: application/json: schema: $ref: '#/components/schemas/Group' description: User group '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '429': $ref: '#/components/responses/429' summary: Get user group tags: - User groups patch: description: Updates a user group in an organization.

Required scope

organizations:groups:write

Rate limiting

Level 1

Enterprise only

This API is available only for Enterprise plan users. You can only use this endpoint if you have the role of a Company Admin. You can request temporary access to Enterprise APIs using this form.

operationId: enterprise-update-group parameters: - $ref: '#/components/parameters/pathOrgId' - $ref: '#/components/parameters/pathGroupId' requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateGroupRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/Group' description: User group '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '409': $ref: '#/components/responses/409' '429': $ref: '#/components/responses/429' summary: Update user group tags: - User groups delete: description: Deletes a user group from an organization.

Required scope

organizations:groups:write

Rate limiting

Level 4

Enterprise only

This API is available only for Enterprise plan users. You can only use this endpoint if you have the role of a Company Admin. You can request temporary access to Enterprise APIs using this form.

operationId: enterprise-delete-group parameters: - $ref: '#/components/parameters/pathOrgId' - $ref: '#/components/parameters/pathGroupId' responses: '204': description: User group deleted '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '429': $ref: '#/components/responses/429' summary: Delete user group tags: - User groups components: schemas: QueryLimit: type: integer format: int32 minimum: 1 maximum: 100 default: 100 example: 100 GroupsPage: type: object description: Page of groups that match the search query. required: - limit - size - data properties: limit: $ref: '#/components/schemas/PageLimit' size: $ref: '#/components/schemas/PageSize' data: type: array description: List of groups. items: $ref: '#/components/schemas/Group' cursor: $ref: '#/components/schemas/PageCursor' type: $ref: '#/components/schemas/PageType' PageLimit: type: integer format: int32 minimum: 1 maximum: 100 default: 100 example: 100 description: The maximum number of results to return per call. If the number of project in the response is greater than the limit specified, the response returns the cursor parameter with a value. PageSize: type: integer format: int32 minimum: 0 maximum: 100 default: 100 example: 87 description: Number of results returned in the response considering the cursor and the limit values sent in the request. For example, if there are 20 results, the request does not have a cursor value, and the limit set to 10, the size of the results will be 10. In this example, the response will also return a cursor value that can be used to retrieve the next set of 10 remaining results in the collection. PageCursor: type: string description: Indicator of the position of the next page of the result. To retrieve the next page, make another query setting its cursor field to the value returned by the current query. If the value is empty, there are no more pages to fetch. example: '3074457345821140946' UpdateGroupRequest: type: object properties: name: type: string description: New name for the user group being updated. maxLength: 60 minLength: 1 example: Product user group description: type: string description: New description of the user group. maxLength: 300 minLength: 0 example: This group contains users that belong to the product team. CreateGroupRequest: type: object required: - name properties: name: type: string description: User group name. maxLength: 60 minLength: 1 example: My user group description: type: string description: Description of the user group being created. maxLength: 300 minLength: 0 example: This user group consists of users from the product team. QueryCursor: type: string example: '3055557345821140500' Group: type: object required: - id - name - type properties: id: type: string description: User group ID example: '3074457345618265000' name: type: string description: User group name example: My group description: type: string description: User group description example: Info about group type: type: string description: Object type default: user-group PageType: type: string description: Type of the object returned. default: cursor-list parameters: queryCursorGroups: name: cursor description: A representation of the position of a user group in the full set of results. It is used to determine the first item of the resulting set. Leave empty to retrieve items from the beginning. in: query schema: $ref: '#/components/schemas/QueryCursor' pathOrgId: name: org_id description: The ID of an organization. in: path required: true schema: type: string example: '3074457345618265000' queryLimitGroups: name: limit description: The maximum number of user groups in the result list. in: query schema: $ref: '#/components/schemas/QueryLimit' pathGroupId: name: group_id description: The ID of a user group. in: path required: true schema: type: string example: '3074457345618265000' securitySchemes: oAuth2AuthCode: type: oauth2 description: For more information, see https://developers.miro.com/reference/authorization-flow-for-expiring-tokens flows: authorizationCode: authorizationUrl: https://miro.com/oauth/authorize tokenUrl: https://api.miro.com/v1/oauth/token scopes: boards:read: Retrieve information about boards, board members, or items boards:write: Create, update, or delete boards, board members, or items microphone:listen: Access a user's microphone to record audio in an iFrame screen:record: Access a user's screen to record it in an iFrame webcam:record: Allows an iFrame to access a user's camera to record video organizations:read: Read information about the organization, such as name, plan, number of licenses, organization settings, or organization members. organizations:teams:read: Read team information, such as the list of teams, team settings, team members, for an organization. organizations:teams:write: Create or delete teams, update team information, team settings, team members, for an organization. x-settings: publish: true