openapi: 3.0.1
info:
title: Miro Developer Platform AI Interaction Logs 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: groups
paths:
/v2/boards/{board_id}/groups:
post:
description: Creates a group of items on a board. The group is created with the items that are passed in the request body.
Required scope
boards:write
Rate limiting
Level 2
operationId: createGroup
summary: Create group
parameters:
- in: path
name: board_id
required: true
schema:
$ref: '#/components/schemas/BoardId'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Group'
required: true
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/GroupResponseShort'
description: Group created
'400':
content:
application/json:
schema:
type: object
properties:
code:
type: string
description: Code of the error.
example: error
message:
type: string
description: Description of the error.
example: Error message
status:
type: integer
format: int32
description: Status Code of the error.
example: 400
type:
type: string
description: Type of the error.
example: error
description: Malformed request
'404':
content:
application/json:
schema:
type: object
properties:
code:
type: string
description: Code of the error.
example: error
message:
type: string
description: Description of the error.
example: Error message
status:
type: integer
format: int32
description: Status Code of the error.
example: 404
type:
type: string
description: Type of the error.
example: error
description: Not found
'429':
content:
application/json:
schema:
type: object
properties:
code:
type: string
description: Code of the error.
example: error
message:
type: string
description: Description of the error.
example: Error message
status:
type: integer
format: int32
description: Status Code of the error.
example: 429
type:
type: string
description: Type of the error.
example: error
description: Too many requests
tags:
- groups
get:
description: Returns all the groups and the items of the respective groups within a specific board.
This method returns results using a cursor-based approach. A cursor-paginated method returns a portion of the total set of results based on the limit specified and a cursor that points to the next portion of the results. To retrieve the next portion of the collection, on your next call to the same method, set the `cursor` parameter equal to the `cursor` value you received in the response of the previous request.
For example, if you set the `limit` query parameter to `10` and the board contains 20 items that are a part of a group, the first call will return information about the first 10 items in the response along with a cursor parameter and value. In this example, let's say the cursor parameter value returned in the response is `foo`. If you want to retrieve the next set of objects, on your next call to the same method, set the cursor parameter value to `foo`.
Required scope
boards:read
Rate limiting
Level 2
operationId: get-all-groups
summary: Get all groups on a board
parameters:
- in: path
name: board_id
description: Unique identifier (ID) of the board.
required: true
schema:
$ref: '#/components/schemas/BoardId'
- in: query
name: limit
description: The maximum number of items to return at one time, default is 10, maximum is 50.
required: false
schema:
type: integer
format: int32
default: 10
maximum: 50
minimum: 10
- in: query
name: cursor
required: false
schema:
type: string
responses:
'200':
content:
application/json:
schema:
properties:
limit:
type: integer
format: int32
description: Limit of items.
example: 10
size:
type: integer
format: int32
description: Size of the items.
example: 1
data:
type: array
items:
$ref: '#/components/schemas/GroupResponseShort'
description: Groups retrieved
'400':
content:
application/json:
schema:
type: object
properties:
code:
type: string
description: Code of the error.
example: error
message:
type: string
description: Description of the error.
example: Error message
status:
type: integer
format: int32
description: Status Code of the error.
example: 400
type:
type: string
description: Type of the error.
example: error
description: Malformed request
'404':
content:
application/json:
schema:
type: object
properties:
code:
type: string
description: Code of the error.
example: error
message:
type: string
description: Description of the error.
example: Error message
status:
type: integer
format: int32
description: Status Code of the error.
example: 404
type:
type: string
description: Type of the error.
example: error
description: Not found
'429':
content:
application/json:
schema:
type: object
properties:
code:
type: string
description: Code of the error.
example: error
message:
type: string
description: Description of the error.
example: Error message
status:
type: integer
format: int32
description: Status Code of the error.
example: 429
type:
type: string
description: Type of the error.
example: error
description: Too many requests
tags:
- groups
/v2/boards/{board_id}/groups/items:
get:
description: Returns a list of items that are a part of any group, within a specific board.
This method returns results using a cursor-based approach. A cursor-paginated method returns a portion of the total set of results based on the limit specified and a cursor that points to the next portion of the results. To retrieve the next portion of the collection, on your next call to the same method, set the `cursor` parameter equal to the `cursor` value you received in the response of the previous request.
For example, if you set the `limit` query parameter to `10` and the board contains 20 items that are a part of a group, the first call will return information about the first 10 items (not 10 groups) in the response along with a cursor parameter and value. In this example, let's say the cursor parameter value returned in the response is `foo`. If you want to retrieve the next set of objects, on your next call to the same method, set the cursor parameter value to `foo`.
Required scope
boards:read
Rate limiting
Level 2
operationId: getItemsByGroupId
summary: Get items of a group by ID
parameters:
- in: path
name: board_id
description: Unique identifier (ID) of the board.
required: true
schema:
$ref: '#/components/schemas/BoardId'
- in: query
name: limit
description: The maximum number of items to return at one time, default is 10, maximum is 50.
required: false
schema:
type: integer
format: int32
default: 10
maximum: 50
minimum: 10
- in: query
name: cursor
required: false
schema:
type: string
- in: query
name: group_item_id
description: The ID of the group item to retrieve.
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
type: object
properties:
limit:
type: integer
format: int32
description: Limit of items.
example: 10
size:
type: integer
format: int32
description: Size of the items.
example: 1
total:
type: integer
format: int32
description: total items that are part of any group
example: 1
data:
type: object
properties:
id:
type: string
description: Unique identifier (ID) of the group.
example: '3258764517517852419'
type:
type: string
description: Indicates the type of object returned. In this case, `type` returns `group`.
data:
type: array
items:
$ref: '#/components/schemas/ItemPagedResponse'
description: Items retrieved
'400':
content:
application/json:
schema:
type: object
properties:
code:
type: string
description: Code of the error.
example: error
message:
type: string
description: Description of the error.
example: Error message
status:
type: integer
format: int32
description: Status Code of the error.
example: 400
type:
type: string
description: Type of the error.
example: error
description: Malformed request
'404':
content:
application/json:
schema:
type: object
properties:
code:
type: string
description: Code of the error.
example: error
message:
type: string
description: Description of the error.
example: Error message
status:
type: integer
format: int32
description: Status Code of the error.
example: 404
type:
type: string
description: Type of the error.
example: error
description: Not found
'429':
content:
application/json:
schema:
type: object
properties:
code:
type: string
description: Code of the error.
example: error
message:
type: string
description: Description of the error.
example: Error message
status:
type: integer
format: int32
description: Status Code of the error.
example: 429
type:
type: string
description: Type of the error.
example: error
description: Too many requests
tags:
- groups
/v2/boards/{board_id}/groups/{group_id}:
get:
description: 'Returns a list of items in a specific group.
Required scope
boards:read
Rate limiting
Level 2 per item ID'
operationId: getGroupById
summary: Get a group by its ID
parameters:
- in: path
name: board_id
description: Unique identifier (ID) of the board.
required: true
schema:
$ref: '#/components/schemas/BoardId'
- in: path
name: group_id
description: Unique identifier (ID) of the group.
required: true
schema:
$ref: '#/components/schemas/GroupId'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/GroupResponseShort'
description: Group retrieved
'400':
content:
application/json:
schema:
type: object
properties:
code:
type: string
description: Code of the error.
example: error
message:
type: string
description: Description of the error.
example: Error message
status:
type: integer
format: int32
description: Status Code of the error.
example: 400
type:
type: string
description: Type of the error.
example: error
description: Malformed request
'404':
content:
application/json:
schema:
type: object
properties:
code:
type: string
description: Code of the error.
example: error
message:
type: string
description: Description of the error.
example: Error message
status:
type: integer
format: int32
description: Status Code of the error.
example: 404
type:
type: string
description: Type of the error.
example: error
description: Not found
'429':
content:
application/json:
schema:
type: object
properties:
code:
type: string
description: Code of the error.
example: error
message:
type: string
description: Description of the error.
example: Error message
status:
type: integer
format: int32
description: Status Code of the error.
example: 429
type:
type: string
description: Type of the error.
example: error
description: Too many requests
tags:
- groups
delete:
description: Ungroups items from a group.
Required scope
boards:write
Rate limiting
Level 3
operationId: unGroup
summary: Ungroup items
parameters:
- in: path
name: board_id
description: Unique identifier (ID) of the board.
required: true
schema:
$ref: '#/components/schemas/BoardId'
- in: path
name: group_id
description: Unique identifier (ID) of the group.
required: true
schema:
$ref: '#/components/schemas/GroupId'
- in: query
name: delete_items
required: false
description: Indicates whether the items should be removed. By default, false.
schema:
type: boolean
responses:
'204':
content:
application/json:
schema:
type: object
description: Ungrouped
'400':
content:
application/json:
schema:
type: object
description: Test error object.
properties:
code:
type: string
description: Code of the error.
example: error
message:
type: string
description: Description of the error.
example: Error message
status:
type: integer
format: int32
description: Status Code of the error.
example: 400
type:
type: string
description: Type of the error.
example: error
description: Malformed request
'404':
content:
application/json:
schema:
type: object
description: Test error object.
properties:
code:
type: string
description: Code of the error.
example: error
message:
type: string
description: Description of the error.
example: Error message
status:
type: integer
format: int32
description: Status Code of the error.
example: 404
type:
type: string
description: Type of the error.
example: error
description: Not found
'429':
content:
application/json:
schema:
type: object
description: Test error object.
properties:
code:
type: string
description: Code of the error.
example: error
message:
type: string
description: Description of the error.
example: Error message
status:
type: integer
format: int32
description: Status Code of the error.
example: 429
type:
type: string
description: Type of the error.
example: error
description: Too many requests
tags:
- groups
put:
description: This endpoint updates an existing group by replacing it entirely with a new group. When the update is made, the original group is completely replaced, and a new group ID is assigned.
Required scope
boards:write
Rate limiting
Level 2
operationId: updateGroup
summary: Updates a group with new items
parameters:
- in: path
name: board_id
description: Unique identifier (ID) of the board.
required: true
schema:
$ref: '#/components/schemas/BoardId'
- in: path
name: group_id
description: Unique identifier (ID) of the group.
required: true
schema:
$ref: '#/components/schemas/GroupId'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Group'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/GroupResponseShort'
description: update group response
'400':
content:
application/json:
schema:
type: object
properties:
code:
type: string
description: Code of the error.
example: error
message:
type: string
description: Description of the error.
example: Error message
status:
type: integer
format: int32
description: Status Code of the error.
example: 400
type:
type: string
description: Type of the error.
example: error
description: Malformed request
'404':
content:
application/json:
schema:
type: object
properties:
code:
type: string
description: Code of the error.
example: error
message:
type: string
description: Description of the error.
example: Error message
status:
type: integer
format: int32
description: Status Code of the error.
example: 404
type:
type: string
description: Type of the error.
example: error
description: Not found
'429':
content:
application/json:
schema:
type: object
properties:
code:
type: string
description: Code of the error.
example: error
message:
type: string
description: Description of the error.
example: Error message
status:
type: integer
format: int32
description: Status Code of the error.
example: 429
type:
type: string
description: Type of the error.
example: error
description: Too many requests
tags:
- groups
/v2/boards/{board_id}/groups/{group_id}?:
delete:
description: Deletes a group from a board. All the items in the group are deleted along with the group. Note - this endpoint will delete items which are locked as well.
Required scope
boards:write
Rate limiting
Level 3
operationId: deleteGroup
summary: Deletes the group
parameters:
- in: path
name: board_id
description: Unique identifier (ID) of the board.
required: true
schema:
$ref: '#/components/schemas/BoardId'
- in: path
name: group_id
description: Unique identifier (ID) of the group.
required: true
schema:
$ref: '#/components/schemas/GroupId'
- in: query
name: delete_items
required: true
description: Indicates whether the items should be removed. Set to `true` to delete items in the group.
schema:
type: boolean
responses:
'204':
content:
application/json:
schema:
type: object
description: Group deleted
'400':
content:
application/json:
schema:
type: object
description: Test error object.
properties:
code:
type: string
description: Code of the error.
example: error
message:
type: string
description: Description of the error.
example: Error message
status:
type: integer
format: int32
description: Status Code of the error.
example: 400
type:
type: string
description: Type of the error.
example: error
description: Malformed request
'404':
content:
application/json:
schema:
type: object
description: Test error object.
properties:
code:
type: string
description: Code of the error.
example: error
message:
type: string
description: Description of the error.
example: Error message
status:
type: integer
format: int32
description: Status Code of the error.
example: 404
type:
type: string
description: Type of the error.
example: error
description: Not found
'429':
content:
application/json:
schema:
type: object
description: Test error object.
properties:
code:
type: string
description: Code of the error.
example: error
message:
type: string
description: Description of the error.
example: Error message
status:
type: integer
format: int32
description: Status Code of the error.
example: 429
type:
type: string
description: Type of the error.
example: error
description: Too many requests
tags:
- groups
components:
schemas:
FrameData:
type: object
description: Contains frame item data, such as the title, frame type, or frame format.
properties:
format:
type: string
default: custom
description: Only custom frames are supported at the moment.
enum:
- custom
- desktop
- phone
- tablet
- a4
- letter
- ratio_1x1
- ratio_4x3
- ratio_16x9
title:
type: string
description: Title of the frame. This title appears at the top of the frame.
example: Sample frame title
type:
type: string
default: freeform
description: Only free form frames are supported at the moment.
enum:
- freeform
- heap
- grid
- rows
- columns
AppCardData:
type: object
description: Contains app card item data, such as the title, description, or fields.
properties:
description:
type: string
description: A short text description to add context about the app card.
example: Sample app card description
fields:
type: array
description: Array where each object represents a custom preview field. Preview fields are displayed on the bottom half of the app card in the compact view.
items:
$ref: '#/components/schemas/CustomField'
owned:
type: boolean
description: Defines whether the card is owned by the application making the call.
status:
type: string
description: Status indicating whether an app card is connected and in sync with the source. When the source for the app card is deleted, the status returns `disabled`.
enum:
- disconnected
- connected
- disabled
title:
type: string
description: A short text header to identify the app card.
example: sample app card item
DocumentData:
type: object
properties:
documentUrl:
type: string
description: 'The URL to download the resource. You must use your access token to access the URL. The URL contains the `redirect` parameter to control the request execution.
`redirect`: By default, the `redirect` parameter is set to `false` and the resource object containing the URL and the resource type is returned with a 200 OK HTTP code. This URL is valid for 60 seconds. You can use this URL to retrieve the resource file.
If the `redirect` parameter is set to `true`, a 307 TEMPORARY_REDIRECT HTTP response is returned. If you follow HTTP 3xx responses as redirects, you will automatically be redirected to the resource file and the content type returned is `application/octet-stream`.'
example: https://api.miro.com/v2/boards/uXjVOfjkmAk=/resources/98765467890987654?redirect=false
title:
type: string
description: A short text header to identify the document.
example: Sample document title
BoardId:
type: string
description: '[Unique identifier (ID) of the board](https://developers.miro.com/reference/board-model)'
example: uXjVOfjmfkE=
createdBy:
type: object
description: Contains information about the user who created the item.
properties:
id:
type: string
description: Unique identifier (ID) of the user.
example: '3458764517517852417'
type:
type: string
description: Indicates the type of object returned. In this case, `type` returns `user`.
example: user
CardData:
type: object
description: Contains card item data, such as the title, description, due date, or assignee ID.
properties:
assigneeId:
type: string
format: int64
description: Unique user identifier. In the GUI, the user ID is mapped to the name of the user who is assigned as the owner of the task or activity described in the card. The identifier is numeric, and it is automatically assigned to a user when they first sign up.
example: '3074457362577955300'
description:
type: string
description: A short text description to add context about the card.
example: sample card description
dueDate:
type: string
format: date-time
description: 'The date when the task or activity described in the card is due to be completed. In the GUI, users can select the due date from a calendar. Format: UTC, adheres to [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601), includes a [trailing Z offset](https://en.wikipedia.org/wiki/ISO_8601#Coordinated_Universal_Time_(UTC)).'
example: '2023-10-12T22:00:55.000Z'
title:
type: string
description: A short text header for the card.
example: sample card item
CustomField:
type: object
description: Array where each object represents a custom preview field. Preview fields are displayed on the bottom half of the app card in the compact view.
properties:
fillColor:
type: string
description: Hex value representing the color that fills the background area of the preview field, when it's displayed on the app card.
example: '#2fa9e3'
iconShape:
type: string
default: round
description: The shape of the icon on the preview field.
enum:
- round
- square
iconUrl:
type: string
description: 'A valid URL pointing to an image available online.
The transport protocol must be HTTPS.
Possible image file formats: JPG/JPEG, PNG, SVG.'
example: https://cdn-icons-png.flaticon.com/512/5695/5695864.png
textColor:
type: string
description: Hex value representing the color of the text string assigned to `value`.
example: '#1a1a1a'
tooltip:
type: string
description: A short text displayed in a tooltip when clicking or hovering over the preview field.
example: Completion status indicator
value:
type: string
description: 'The actual data value of the custom field.
It can be any type of information that you want to convey.'
example: 'Status: in progress'
Geometry:
type: object
description: Contains geometrical information about the item, such as its width or height.
properties:
height:
type: number
format: double
description: Height of the item, in pixels.
example: 60
rotation:
type: number
format: double
description: Rotation angle of an item, in degrees, relative to the board. You can rotate items clockwise (right) and counterclockwise (left) by specifying positive and negative values, respectively.
width:
type: number
format: double
description: Width of the item, in pixels.
example: 320
modifiedBy:
type: object
description: Contains information about the user who last modified the item.
properties:
id:
type: string
description: Unique identifier (ID) of the user.
example: '3458764517517852417'
type:
type: string
description: Indicates the type of object returned. In this case, `type` returns `user`.
example: user
Position:
type: object
description: Contains location information about the item, such as its x coordinate, y coordinate, and the origin of the x and y coordinates.
properties:
origin:
type: string
default: center
description: 'Area of the item that is referenced by its x and y coordinates. For example, an item with a center origin will have its x and y coordinates point to its center. The center point of the board has x: 0 and y: 0 coordinates.
Currently, only one option is supported.'
enum:
- center
relativeTo:
type: string
enum:
- canvas_center
- parent_top_left
x:
type: number
format: double
description: 'X-axis coordinate of the location of the item on the board.
By default, all items have absolute positioning to the board, not the current viewport. Default: 0.
The center point of the board has `x: 0` and `y: 0` coordinates.'
example: 100
y:
type: number
format: double
description: 'Y-axis coordinate of the location of the item on the board.
By default, all items have absolute positioning to the board, not the current viewport. Default: 0.
The center point of the board has `x: 0` and `y: 0` coordinates.'
example: 100
GenericItem:
type: object
description: Contains the result data.
properties:
createdAt:
type: string
format: date-time
description: 'Date and time when the item was created.
Format: UTC, adheres to [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601), includes a [trailing Z offset](https://en.wikipedia.org/wiki/ISO_8601#Coordinated_Universal_Time_(UTC)).'
example: '2022-03-30T17:26:50.000Z'
createdBy:
$ref: '#/components/schemas/createdBy'
data:
$ref: '#/components/schemas/WidgetDataOutput'
geometry:
$ref: '#/components/schemas/Geometry'
id:
type: string
description: Unique identifier (ID) of an item.
example: '3458764517517819000'
modifiedAt:
type: string
format: date-time
description: 'Date and time when the item was last modified.
Format: UTC, adheres to [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601), includes a [trailing Z offset](https://en.wikipedia.org/wiki/ISO_8601#Coordinated_Universal_Time_(UTC)).'
example: '2022-03-30T17:26:50.000Z'
modifiedBy:
$ref: '#/components/schemas/modifiedBy'
parent:
$ref: '#/components/schemas/Parent'
position:
$ref: '#/components/schemas/Position'
type:
type: string
description: Type of item that is returned.
example: sticky_note
required:
- id
- type
TextData:
type: object
description: Contains text item data, such as the title, content, or description. For more information on the JSON properties, see [Data](https://developers.miro.com/reference/data).
properties:
content:
type: string
description: The actual text (content) that appears in the text item.
example: Hello
required:
- content
EmbedData:
type: object
properties:
contentType:
type: string
description: Type of the embedded item's content.
example: video
description:
type: string
description: Short description of the embedded item.
example: So this is how to organize your life with Miro (a virtual whiteboard) for collaboration, brainstorming, and project management. Students, designers, agile en...
html:
type: string
description: Html code of the embedded item.
example:
mode:
type: string
description: 'Defines how the content in the embed item is displayed on the board.
`inline`: The embedded content is displayed directly on the board.
`modal`: The embedded content is displayed inside a modal overlay on the board.'
enum:
- inline
- modal
previewUrl:
type: string
description: 'The URL to download the resource. You must use your access token to access the URL.
The URL contains the `redirect` parameter and the `format` parameter to control the request execution as described in the following parameters:
`format` parameter: By default, the image format is set to the preview image. If you want to download the original image, set the `format` parameter in the URL to `original`.
`redirect`: By default, the `redirect` parameter is set to `false` and the resource object containing the URL and the resource type is returned with a 200 OK HTTP code. This URL is valid for 60 seconds. You can use this URL to retrieve the resource file.
If the `redirect` parameter is set to `true`, a 307 TEMPORARY_REDIRECT HTTP response is returned. If you follow HTTP 3xx responses as redirects, you will automatically be redirected to the resource file and the content type returned can be `image/png`, ''image/svg'', or ''image/jpg'', depending on the original image type.'
example: https://api.miro.com/v2/boards/uXjVOfjkmAk=/resources/98765467890987654?format=preview&redirect=false
providerName:
type: string
description: Name of the content's provider.
example: YouTube
providerUrl:
type: string
description: Url of the content's provider.
example: https://www.youtube.com/
title:
type: string
description: Title of the embedded item.
example: HOW TO ORGANIZE YOUR LIFE WITH MIRO! ✏ Virtual Whiteboard Tour
url:
type: string
description: 'A [valid URL](https://developers.miro.com/reference/data#embeddata) pointing to the content resource that you want to embed in the board. Possible transport protocols: HTTP, HTTPS.'
example: https://www.youtube.com/watch?v=HlVSNEiFCBk
Parent:
type: object
description: Contains information about the parent frame for the item.
properties:
id:
type: string
format: int64
description: Unique identifier (ID) of the parent frame for the item.
example: '3074457362577955300'
GroupId:
type: string
description: Unique identifier (ID) of the Group
example: 3858764584681774600
WidgetDataOutput:
type: object
description: Contains the item data, such as the item title, content, or description.
oneOf:
- $ref: '#/components/schemas/TextData'
- $ref: '#/components/schemas/EmbedData'
- $ref: '#/components/schemas/CardData'
- $ref: '#/components/schemas/AppCardData'
- $ref: '#/components/schemas/ImageData'
- $ref: '#/components/schemas/DocumentData'
- $ref: '#/components/schemas/ShapeData'
- $ref: '#/components/schemas/FrameData'
- $ref: '#/components/schemas/StickyNoteData'
PageLinks:
type: object
description: Contains pagination links for the collection.
properties:
first:
type: string
description: Link to retrieve information in the first page of the collection.
example: http://api.miro.com/v2/boards/o9J_lJWSHdg=/items?limit=10&cursor=MzQ1ODc2NaSDNRDMDA3MzYyOX==
last:
type: string
description: Link to the retrieve information in the last page of the collection.
example: http://api.miro.com/v2/boards/o9J_lJWSHdg=/items?limit=10&cursor=MzQ1ODc2NDUyNDUyMDA3MzYyOX==
next:
type: string
description: Link to retrieve information in the next page of the collection.
example: http://api.miro.com/v2/boards/o9J_lJWSHdg=/items?limit=10&cursor=MzQ1ODc2NDUyNDsdgsFEwfFJCw==
prev:
type: string
description: Link to retrieve information in the previous page of the collection.
example: http://api.miro.com/v2/boards/o9J_lJWSHdg=/items?limit=10&cursor=
self:
type: string
description: Link to retrieve information in the current page of the collection.
example: http://api.miro.com/v2/boards/o9J_lJWSHdg=/items?limit=10&cursor=MzQ1OD1245643FWUyMDA3MzYyOX==
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
ItemPagedResponse:
type: object
properties:
data:
type: array
description: Contains the result data.
items:
$ref: '#/components/schemas/GenericItem'
limit:
type: integer
format: int32
description: 'Maximum number of results returned based on the `limit` specified in the request. For example, if there are `30` results, and the request has the offset set to `0` and the `limit` set to `20`, the `size` of the results will be `20`. The rest of the results will not be returned. To retrieve the rest of the results, you must make another request and set the appropriate value for the offset parameter. In this example, you will set the offset parameter to 20 as the offset is zero-based.
'
example: 20
links:
$ref: '#/components/schemas/PageLinks'
offset:
type: integer
format: int32
description: Zero-based index of the first item in the collection. For example, If there are `30` results, and the request has the offset set to `28`, the response will return `2` results.
example: 0
size:
type: integer
format: int32
description: Number of results returned in the response. The `size` is the number of results returned considering the `offset` and the `limit` values sent in the request. For example, if there are `30` results, and the request has the offset set to `0` and the `limit` set to `20`, the `size` of the results will be `20`.
If there are `10` results, and the request has the offset set to `0` and the `limit` set to `20`, the `size` of the results will be `10`.
If there are `30` results, and the request has the offset set to `28` and the `limit` set to `20`, the `size` of the results will be `2` as the `offset` is the zero-based offset of the first item in the collection.
example: 1
total:
type: integer
format: int64
description: Total number of results available. If the value of the `total` parameter is higher than the value of the `size` parameter, this means that there are more results that you can retrieve. To retrieve more results, you can make another request and set the `offset` value accordingly. For example, if there are `30` results, and the request has the `offset` set to `0` and the `limit` set to `20`, the `size` parameter will return `20` and the `total` parameter will return `30`. This means that there are 9 more results to retrieve (as the offset is zero-based).
example: 1
type:
type: string
ShapeData:
type: object
description: Contains shape item data, such as the content or shape type of the shape.
properties:
content:
type: string
description: The text you want to display on the shape.
example: Hello
shape:
type: string
default: rectangle
description: Defines the geometric shape of the item when it is rendered on the board.
enum:
- rectangle
- round_rectangle
- circle
- triangle
- rhombus
- parallelogram
- trapezoid
- pentagon
- hexagon
- octagon
- wedge_round_rectangle_callout
- star
- flow_chart_predefined_process
- cloud
- cross
- can
- right_arrow
- left_arrow
- left_right_arrow
- left_brace
- right_brace
StickyNoteData:
type: object
description: Contains sticky note item data, such as the content or shape of the sticky note.
properties:
content:
type: string
description: The actual text (content) that appears in the sticky note item.
example: Hello
shape:
type: string
default: square
description: Defines the geometric shape of the sticky note and aspect ratio for its dimensions.
enum:
- square
- rectangle
GroupResponseShort:
type: object
description: Contains the result data.
properties:
id:
type: string
description: Unique identifier (ID) of the group.
example: '3258764517517852419'
type:
type: string
description: Indicates the type of object returned. In this case, `type` returns `group`.
example: group
data:
$ref: '#/components/schemas/Group'
links:
$ref: '#/components/schemas/PageLinks'
ImageData:
type: object
properties:
imageUrl:
type: string
description: 'The URL to download the resource. You must use your access token to access the URL.
The URL contains the `redirect` parameter and the `format` parameter to control the request execution as described in the following parameters:
`format` parameter: By default, the image format is set to the preview image. If you want to download the original image, set the `format` parameter in the URL to `original`.
`redirect`: By default, the `redirect` parameter is set to `false` and the resource object containing the URL and the resource type is returned with a 200 OK HTTP code. This URL is valid for 60 seconds. You can use this URL to retrieve the resource file.
If the `redirect` parameter is set to `true`, a 307 TEMPORARY_REDIRECT HTTP response is returned. If you follow HTTP 3xx responses as redirects, you will automatically be redirected to the resource file and the content type returned can be `image/png`, ''image/svg'', or ''image/jpg'', depending on the original image type.'
example: https://api.miro.com/v2/boards/uXjVOfjkmAk=/resources/98765467890987654?format=preview&redirect=false
title:
type: string
description: A short text header to identify the image.
example: Sample image title
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