openapi: 3.0.1 info: title: Miro Developer Platform AI Interaction Logs Discovery 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: Discovery paths: /ServiceProviderConfig: get: tags: - Discovery description: Retrieve supported operations and SCIM API basic configuration. responses: '200': description: Successful Operation content: application/scim+json: schema: $ref: '#/components/schemas/ServiceProviderConfigResponse' example: schemas: - urn:ietf:params:scim:schemas:core:2.0:ServiceProviderConfig patch: supported: true bulk: supported: false filter: supported: true maxResults: 200 changePassword: supported: false sort: supported: true etag: supported: false authenticationSchemes: - type: oauthbearertoken name: OAuth Bearer Token application/json: schema: $ref: '#/components/schemas/ServiceProviderConfigResponse' example: schemas: - urn:ietf:params:scim:schemas:core:2.0:ServiceProviderConfig patch: supported: true bulk: supported: false filter: supported: true maxResults: 200 changePassword: supported: false sort: supported: true etag: supported: false authenticationSchemes: - type: oauthbearertoken name: OAuth Bearer Token '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '500': $ref: '#/components/responses/500' operationId: listServiceProviderConfigs summary: Get Service Provider Config x-codeSamples: - lang: curl label: Get ServiceProviderConfig source: "curl -X GET 'https://api.miro.com/api/v1/scim/ServiceProviderConfig' \\\n -H 'Authorization: Bearer ' \\\n -H 'Content-Type: application/scim+json'" - lang: javascript label: Get ServiceProviderConfig (fetch) source: "const res = await fetch(\n 'https://api.miro.com/api/v1/scim/ServiceProviderConfig',\n {\n method: 'GET',\n headers: {\n 'Authorization': 'Bearer ',\n 'Content-Type': 'application/scim+json'\n },\n // no body\n }\n);\nconst data = await res.json();\nconsole.log(data);" /ResourceTypes: get: tags: - Discovery description: Retrieve information about which SCIM resources are supported.

Currently, Miro supports Users and Groups as Resource Types. responses: '200': description: Successful Operation content: application/scim+json: schema: $ref: '#/components/schemas/ResourceTypeListResponse' example: Resources: - id: User name: User endpoint: /Users schema: urn:ietf:params:scim:schemas:core:2.0:User totalResults: 1 startIndex: 1 itemsPerPage: 1 schemas: - urn:ietf:params:scim:api:messages:2.0:ListResponse application/json: schema: $ref: '#/components/schemas/ResourceTypeListResponse' example: Resources: - id: User name: User endpoint: /Users schema: urn:ietf:params:scim:schemas:core:2.0:User totalResults: 1 startIndex: 1 itemsPerPage: 1 schemas: - urn:ietf:params:scim:api:messages:2.0:ListResponse '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '500': $ref: '#/components/responses/500' operationId: listResourceTypes summary: List resource types x-codeSamples: - lang: curl label: List resource types source: "curl -X GET 'https://api.miro.com/api/v1/scim/ResourceTypes' \\\n -H 'Authorization: Bearer ' \\\n -H 'Content-Type: application/scim+json'" - lang: javascript label: List resource types (fetch) source: "const res = await fetch(\n 'https://api.miro.com/api/v1/scim/ResourceTypes',\n {\n method: 'GET',\n headers: {\n 'Authorization': 'Bearer ',\n 'Content-Type': 'application/scim+json'\n },\n // no body\n }\n);\nconst data = await res.json();\nconsole.log(data);" /ResourceTypes/{resource}: get: tags: - Discovery description: Retrieve metadata for the available resource types (User and Group) that are supported. parameters: - name: resource in: path required: true schema: type: string description: Resource type identifier for which to retrieve metadata. Supported values are 'User' and 'Group'. enum: - User - Group responses: '200': description: Successful Operation content: application/scim+json: schema: $ref: '#/components/schemas/ResourceType' example: id: User name: User endpoint: /Users schema: urn:ietf:params:scim:schemas:core:2.0:User application/json: schema: $ref: '#/components/schemas/ResourceType' example: id: User name: User endpoint: /Users schema: urn:ietf:params:scim:schemas:core:2.0:User headers: ETag: description: Entity tag identifying the current version of the resource. schema: type: string '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '500': $ref: '#/components/responses/500' operationId: getResourceType summary: Get resource type x-codeSamples: - lang: curl label: Get resource type source: "curl -X GET 'https://api.miro.com/api/v1/scim/ResourceTypes/{resource}' \\\n -H 'Authorization: Bearer ' \\\n -H 'Content-Type: application/scim+json'" - lang: javascript label: Get resource type (fetch) source: "const res = await fetch(\n 'https://api.miro.com/api/v1/scim/ResourceTypes/{resource}',\n {\n method: 'GET',\n headers: {\n 'Authorization': 'Bearer ',\n 'Content-Type': 'application/scim+json'\n },\n // no body\n }\n);\nconst data = await res.json();\nconsole.log(data);" /Schemas: get: tags: - Discovery description: Retrieve metadata about Users, Groups, and extension attributes that are currently supported. responses: '200': description: Successful Operation content: application/scim+json: schema: $ref: '#/components/schemas/SchemaListResponse' example: Resources: - id: urn:ietf:params:scim:schemas:core:2.0:User name: User description: User Account attributes: - name: userName type: string required: true totalResults: 1 startIndex: 1 itemsPerPage: 1 schemas: - urn:ietf:params:scim:api:messages:2.0:ListResponse application/json: schema: $ref: '#/components/schemas/SchemaListResponse' example: Resources: - id: urn:ietf:params:scim:schemas:core:2.0:User name: User description: User Account attributes: - name: userName type: string required: true totalResults: 1 startIndex: 1 itemsPerPage: 1 schemas: - urn:ietf:params:scim:api:messages:2.0:ListResponse '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '500': $ref: '#/components/responses/500' operationId: listSchemas summary: List schemas x-codeSamples: - lang: curl label: List schemas source: "curl -X GET 'https://api.miro.com/api/v1/scim/Schemas' \\\n -H 'Authorization: Bearer ' \\\n -H 'Content-Type: application/scim+json'" - lang: javascript label: List schemas (fetch) source: "const res = await fetch(\n 'https://api.miro.com/api/v1/scim/Schemas',\n {\n method: 'GET',\n headers: {\n 'Authorization': 'Bearer ',\n 'Content-Type': 'application/scim+json'\n },\n // no body\n }\n);\nconst data = await res.json();\nconsole.log(data);" /Schemas/{uri}: get: tags: - Discovery description: Retrieve information about how users, groups, and enterprise-user attributes URIs that are formatted. parameters: - name: uri in: path description: Schema URI of a particular resource type. required: true schema: type: string enum: - urn:ietf:params:scim:schemas:core:2.0:User - urn:ietf:params:scim:schemas:core:2.0:Group - urn:ietf:params:scim:schemas:extension:enterprise:2.0:User responses: '200': description: Successful Operation content: application/scim+json: schema: $ref: '#/components/schemas/SchemaResource' example: id: urn:ietf:params:scim:schemas:core:2.0:User name: User description: User Account attributes: - name: userName type: string required: true application/json: schema: $ref: '#/components/schemas/SchemaResource' example: id: urn:ietf:params:scim:schemas:core:2.0:User name: User description: User Account attributes: - name: userName type: string required: true '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '500': $ref: '#/components/responses/500' operationId: getSchema summary: Get schema x-codeSamples: - lang: curl label: Get schema source: "curl -X GET 'https://api.miro.com/api/v1/scim/Schemas/{uri}' \\\n -H 'Authorization: Bearer ' \\\n -H 'Content-Type: application/scim+json'" - lang: javascript label: Get schema (fetch) source: "const res = await fetch(\n 'https://api.miro.com/api/v1/scim/Schemas/{uri}',\n {\n method: 'GET',\n headers: {\n 'Authorization': 'Bearer ',\n 'Content-Type': 'application/scim+json'\n },\n // no body\n }\n);\nconst data = await res.json();\nconsole.log(data);" components: schemas: ResourceTypeListResponse: type: object properties: schemas: type: array description: An array of URNs that identify the schema(s) that define the structure of this response.

In this case, it contains urn:ietf:params:scim:api:messages:2.0:ListResponse, which indicates that this is a SCIM ListResponse response containing list of supported resource types. items: type: string example: urn:ietf:params:scim:api:messages:2.0:ListResponse totalResults: type: number description: Number of resource types returned in the response. example: 2 Resources: type: array items: type: object properties: schemas: type: array description: An array of URNs that identify the schema(s) that define the structure of this resource type. items: type: string example: urn:ietf:params:scim:schemas:core:2.0:ResourceType id: type: string description: Identifier of the resource type. Since Miro supports Users and Groups, the values are User or Group. example: User name: type: string description: Name of the resource type. Since Miro supports Users and Groups, the values are User or Group. example: User description: type: string description: Description of the resource type. Since Miro supports Users and Groups, the values are User or Group. example: User endpoint: type: string description: Endpoint extension of the resource type. Since Miro supports Users and Groups, the values are /Users or /Groups. example: /Users schema: type: string description: Schema URI of the resource type. Since Miro supports Users and Groups, the values are urn:ietf:params:scim:schemas:core:2.0:User or urn:ietf:params:scim:schemas:core:2.0:Group. example: urn:ietf:params:scim:schemas:core:2.0:User schemaExtensions: type: array description: Schema extensions supported for the resource type. items: type: object properties: schema: type: string description: Schema extension URI of the resource type. example: urn:ietf:params:scim:schemas:extension:enterprise:2.0:User required: type: boolean description: Indicator of whether the schema extension is required. example: false description: Information about the supported resource types. Currently Miro supports Users and Groups. SchemaAttribute: type: object properties: schemas: type: array description: Identifies which schema(s) this resource used. In this case it is the SCIM core User/Group schema. items: type: string enum: - urn:ietf:params:scim:schemas:core:2.0:User example: urn:ietf:params:scim:schemas:core:2.0:User name: type: string description: Name of schema attribute. example: userName type: type: string description: Type of schema attribute. example: string multiValued: type: boolean description: Indicates whether the attribute is multi-valued. example: false description: type: string description: Description of schema attribute. example: Unique identifier for the user typically used by the user to directly authenticate to the service provider. Each User MUST include a non-empty userName value. This identifier MUST be unique across the service provider's entire set of Users. required: type: boolean description: Indicates whether the attribute is required. example: true subAttributes: type: array items: $ref: '#/components/schemas/SchemaAttribute' caseExact: type: boolean description: Indicates whether the attribute is case exact. example: false mutability: type: string description: Indicates the mutability of the attribute. example: readWrite returned: type: string description: Indicates when the attribute is returned in a response. example: default uniqueness: type: string description: Indicates the uniqueness of the attribute. example: server description: Definition of schema attributes. ResourceType: type: object properties: schemas: type: array description: An array of URNs that identify the schema(s) that define the structure of this resource type. items: type: string example: urn:ietf:params:scim:schemas:core:2.0:ResourceType id: type: string description: Identifier of the resource type. example: User name: type: string description: Name of the resource type. example: User description: type: string description: Name of the resource type. example: User endpoint: type: string description: Endpoint extension of the resource type. example: /Users schema: type: string description: Schema URI of the resource type. example: urn:ietf:params:scim:schemas:core:2.0:User schemaExtensions: type: array description: Schema extensions supported for the resource type. items: type: object properties: schema: type: string description: Schema extension URI of the resource type. example: urn:ietf:params:scim:schemas:extension:enterprise:2.0:User required: type: boolean description: Indicator of whether the schema extension is required. example: false description: Metadata for the available resource types (User and Group) SchemaResource: type: object properties: id: type: string description: Identifier of the schema resource. example: urn:ietf:params:scim:schemas:core:2.0:User name: type: string description: Name of the schema resource. example: User description: type: string description: Description of the schema resource. example: User Account attributes: type: array description: Attributes that are currently supported. items: $ref: '#/components/schemas/SchemaAttribute' meta: type: object description: Metadata about the schema resource. properties: resourceType: type: string description: Type of the resource. example: Schema location: type: string description: The URI of the resource. example: https://miro.com/api/v1/scim/Schemas/urn:ietf:params:scim:schemas:core:2.0:User description: Information on how users, groups, and enterprise-user attributes are formatted. SchemaListResponse: type: object properties: schemas: type: array description: Schema(s) that define the structure of this response.

In this case, it contains urn:ietf:params:scim:api:messages:2.0:ListResponse, which indicates that this is a SCIM ListResponse. items: type: string example: urn:ietf:params:scim:api:messages:2.0:ListResponse totalResults: type: number description: Number of schemas returned in the response. example: 3 Resources: type: array description: Resources containing metadata about attributes that are currently supported. items: type: object properties: schemas: type: array description: Schema(s) that define the structure of this resource. items: type: string example: urn:ietf:params:scim:schemas:core:2.0:Schema id: type: string description: Identifier of the resource. example: urn:ietf:params:scim:schemas:core:2.0:User name: type: string description: Name of the resource. example: User description: type: string description: Description of the resource. example: User Account attributes: type: array description: Attributes that are currently supported. items: type: object properties: name: type: string description: Name of the attribute. example: userName type: type: string description: Data type of the attribute. example: string multiValued: type: boolean description: Indicates whether the attribute is multi-valued. example: false description: type: string description: Description of the attribute. example: Unique identifier for the user typically used by the user to directly authenticate to the service provider. Each User MUST include a non-empty userName value. This identifier MUST be unique across the service provider's entire set of Users. required: type: boolean description: Indicates whether the attribute is required. example: true caseExact: type: boolean description: Indicates whether the attribute is case exact. example: false mutability: type: string description: Indicates the mutability of the attribute. example: readWrite returned: type: string description: Indicates when the attribute is returned in a response. example: default uniqueness: type: string description: Indicates the uniqueness of the attribute. example: server meta: type: object description: Metadata about the resource. properties: resourceType: type: string description: Type of the resource. example: Schema location: type: string description: The URI of the resource. example: https://miro.com/api/v1/scim/Schemas/urn:ietf:params:scim:schemas:core:2.0:User description: Metadata about Users, Groups and extension attributes that are currently supported. ServiceProviderConfigResponse: type: object properties: schemas: type: array description: An array of URNs that identify the schema(s) that define the structure of this response.

In this case, it contains urn:ietf:params:scim:schemas:core:2.0:ServiceProviderConfig, which indicates that this is a SCIM ServiceProviderConfig response. items: type: string example: urn:ietf:params:scim:schemas:core:2.0:ServiceProviderConfig documentationUri: type: string description: A link to Miro SCIM documentation. example: https://developers.miro.com/docs/scim patch: type: object description: Indicator of whether the PATCH operation is supported. properties: supported: type: boolean description: Returns true if the operation is supported. example: true bulk: type: object description: Indicator of whether the Bulk operation is supported. properties: supported: type: boolean description: Returns true if the operation is supported. example: false maxOperations: type: number description: Maximum operations supported in a single request. example: 0 maxPayloadSize: type: number description: Maximum payload size supported for a single request. example: 0 filter: type: object description: Indicator of whether the Filter operation is supported. properties: supported: type: boolean description: Returns true if the operation is supported. example: true maxResults: type: number description: Maximum results returned in a list response. example: 200 changePassword: type: object description: Indicator of whether the Change Password operation is supported. properties: supported: type: boolean description: Returns true if the operation is supported. example: false sort: type: object description: Indicator of whether the Sort operation is supported. properties: supported: type: boolean description: Returns true if the operation is supported. example: true etag: type: object description: Indicator of whether ETag is supported. properties: supported: type: boolean description: Returns true if ETag is supported. example: false authenticationSchemes: type: array description: A list of supported authentication schemes. items: type: object properties: name: type: string description: Name of the authentication scheme. example: OAuth 2.0 Bearer Token description: type: string description: Description of the authentication scheme. example: The OAuth 2.0 Bearer Token Authentication scheme. OAuth enables clients to access protected resources by obtaining an access token which is defined in RFC 6750 as a string representing an access authorization issued to the client rather than using the resource owner's credentials directly. specUri: type: string description: Specification URI of the authentication scheme. example: http://tools.ietf.org/html/rfc6750 type: type: string description: Type of the authentication scheme. example: oauthbearertoken primary: type: boolean description: Returns true if this is the primary authentication scheme of the service provider. example: true description: Supported operations and SCIM API basic configuration. 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