- Overview
- Setup Guide
- Permissions
- Troubleshooting
Board data
Boards, items, members, tags, groups, and connectorsActivity & admin
Audit logs and organization/team membership (Enterprise)Data streams
This Provider Plugin defines 10 data streams.| Stream | Description | Sync |
|---|---|---|
boards | Extracts all boards accessible to the authenticated user from Miro. Boards are the central resource in Miro, containing items, members, and collaboration data. | full |
board_items | Extracts all items (widgets) from a specific Miro board. Items include sticky notes, shapes, text, cards, images, documents, frames, embeds, app cards, and more. Requires board_id from parent boards tap. | full |
board_members | Extracts all members of a specific Miro board, including their roles and permissions. Requires board_id from parent boards tap. | full |
board_tags | Extracts all tags defined on a specific Miro board. Tags are used to categorize and label items. Requires board_id from parent boards tap. | full |
board_connectors | Extracts all connectors (lines/arrows connecting items) from a specific Miro board. Requires board_id from parent boards tap. | full |
board_groups | Extracts all groups from a specific Miro board. Groups are collections of items that are logically grouped together. Requires board_id from parent boards tap. | full |
audit_logs | Extracts audit log events from Miro (Enterprise plan only). Provides who-did-what-when activity data for compliance and monitoring. Requires auditlogs:read scope and an Enterprise plan. Supports incremental sync via createdAfter parameter. | incremental |
organization_members | Extracts all members of a Miro organization (Enterprise plan only). Requires org_id ingestion config field. Provides user records with roles and activity data. | full |
organization_teams | Extracts all teams within a Miro organization (Enterprise plan only). Requires org_id ingestion config field. | full |
team_members | Extracts all members of a specific team within a Miro organization (Enterprise plan only). Requires org_id ingestion config field and team_id from parent organization_teams tap. | full |
Miro
What You’ll Need
| Credential | What it is |
|---|---|
| Access Token | Non-expiring token from your Miro Developer Portal app |
| Organization ID | Numeric org ID from Company Settings (Enterprise only) |
Info: Dedicated app required. Create a Miro app specifically for Parable in the Developer Portal. The non-expiring token option must be selected at app creation time — it cannot be changed later.
- A Miro account on any paid plan (Starter, Business, or Enterprise).
- Enterprise-gated taps (
audit_logs,organization_members,organization_teams,team_members) additionally require an Enterprise plan and your organization ID.
Step 1: Open the Miro Developer Portal
- Sign in to Miro.
- Go to miro.com/app/settings/user-profile/apps.
- Click Create new app.
Step 2: Configure the app
- Enter an app name such as
Parable Platform. - Select your workspace team.
- Under Token expiration, select Non-expiring (this option cannot be changed after creation).
- Click Create app.
Step 3: Set app permissions (scopes)
In your app settings, enable the following permissions:| Scope | Purpose |
|---|---|
boards:read | Read all board data (required) |
identity:read | Token validation |
team:read | Team information |
auditlogs:read | Audit logs — Enterprise only |
organizations:read | Organization members — Enterprise only |
organizations:teams:read | Organization teams — Enterprise only |
Step 4: Copy the access token
- In your app settings, scroll to the App credentials section.
- Copy the Access token.
Warning: Copy your now! This is the only time it will be displayed. Store it in a secure password manager before closing this page.
Step 5: Find your Organization ID (Enterprise)
Required for Enterprise-gated taps:audit_logs, organization_members, organization_teams, and team_members. Skip this step if you are not on an Enterprise plan.- Sign in to Miro as a company admin.
- Open Settings (profile menu) > Company Settings > Security > Audit log.
- On the Audit log page, copy your Organization ID (a numeric value, typically 10-25 digits).
- Keep this value for the Parable Provider form.
Info: Without a valid Organization ID, Enterprise taps are skipped during sync. Board-level taps still run.
Step 6: Connect in Parable
- In Parable, open Platform → Providers and choose the Provider to add.
- Select Miro.
- Paste your access token into the Token field.
- (Enterprise) Paste your Organization ID from the previous step.
- Click Save & verify.
Success: Success! If you received a 200 OK response with valid data, your credentials are configured correctly. You can now configure this Provider in Parable.
Tip: Rate Limits: enforces rate limits of . Parable handles rate limiting automatically with exponential backoff, but initial syncs of large datasets may take longer due to these limits.
Miro
| Scope | Taps enabled | Required |
|---|---|---|
boards:read | boards, board_items, board_members, board_tags, board_connectors, board_groups | Yes |
identity:read | Token validation probe | Yes |
team:read | Team metadata on boards | Recommended |
auditlogs:read | audit_logs | Enterprise only |
organizations:read | organization_members | Enterprise only |
organizations:teams:read | organization_teams, team_members | Enterprise only |
Audit Logs
Audit Logs
audit_logsAudit Logs contain audit log events from Miro (Enterprise plan only). Provides who-did-what-when activity data for compliance and monitoring. Requires auditlogs:read scope and an Enterprise plan. Supports incremental sync via createdAfter parameter.- Enables: trace recorded Enterprise organization actions to their actors and event times.
- Scope: Reads provider changes through
GET /{apiVersion}/audit/logsusing the declared incremental request boundary. The operation is Enterprise-only and is limited to the configured organization and token scopes.
Category
Category
audit_logs.categoryCategory states event category grouping from Miro (e.g., boards_and_templates, authentication). It preserves the provider’s current classification of this record.- Enables: separate audit log records by the exact provider-reported category value when describing their recorded state.
- Interpretation: The provider supplies
categoryper audit log event record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, category is the work record’s classification, not an individual-performance measure.
Context
Context
audit_logs.contextContext records context information about where and how the event occurred. It preserves the containing or referenced object needed to reconstruct the provider relationship.- Enables: expand the nested context object into its declared child fields for each audit log event record.
- Interpretation: The provider returns
contextas a nested object or reference onAuditLogEvent; an absent value does not prove that no related object exists outside the credential’s visibility.
Board
Board
audit_logs.context.boardBoard captures the board related to the event. It preserves the containing or referenced object needed to reconstruct the provider relationship.- Enables: associate each audit context record with the specific provider container named by board.
- Interpretation: The provider returns
boardas a nested object or reference onAuditContext; an absent value does not prove that no related object exists outside the credential’s visibility.
ID
ID
audit_logs.context.board.idID is the unique identifier of the context entity. It is needed to resolve references that repeat the same provider identifier.- Enables: match audit log records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
- Interpretation: The provider supplies
idas a record-level identifier onAuditContextEntity. It is not a uniqueness guarantee unless a connector directive says so.
Name
Name
audit_logs.context.board.nameName records display name of the context entity. It keeps the exact text, label, or authored value needed to interpret the record.- Enables: inspect the exact name value attached to each audit context entity record.
- Interpretation: The provider supplies
nameat audit context entity granularity in the format stated by its description; omitted or redacted content remains unknown.
Type
Type
audit_logs.context.board.typeType states type of the context entity. It preserves the provider’s current classification of this record.- Enables: separate audit log records by the exact provider-reported type value when describing their recorded state.
- Interpretation: The provider supplies
typeper audit context entity record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, type is the work record’s classification, not an individual-performance measure.
IP
IP
audit_logs.context.ipIP records IP address from which the action was performed. It preserves the geographic, locale, time-zone, or coordinate context represented by the field.- Enables: segment audit log records by the recorded IP without inferring a person’s physical presence.
- Interpretation: The provider supplies
ipas location or localization context per audit context record; it does not establish a person’s real-time physical location.
Organization
Organization
audit_logs.context.organizationOrganization captures the organization in which the event occurred. It preserves the containing or referenced object needed to reconstruct the provider relationship.- Enables: associate each audit context record with the specific provider container named by organization.
- Interpretation: The provider returns
organizationas a nested object or reference onAuditContext; an absent value does not prove that no related object exists outside the credential’s visibility.
Project
Project
audit_logs.context.projectProject captures the project related to the event. It preserves the containing or referenced object needed to reconstruct the provider relationship.- Enables: associate each audit context record with the specific provider container named by project.
- Interpretation: The provider returns
projectas a nested object or reference onAuditContext; an absent value does not prove that no related object exists outside the credential’s visibility.
Team
Team
audit_logs.context.teamTeam captures the team in which the event occurred. It preserves the containing or referenced object needed to reconstruct the provider relationship.- Enables: associate each audit context record with the specific provider container named by team.
- Interpretation: The provider returns
teamas a nested object or reference onAuditContext; an absent value does not prove that no related object exists outside the credential’s visibility.
Created At
Created At
audit_logs.createdAtCreated At records ISO 8601 timestamp when the event occurred. It anchors the named event or boundary on the record’s timeline.- Enables: place audit log records on a timeline by created at and select the records within an explicit reporting window.
- Interpretation: The provider supplies
createdAtper audit log event record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
Created By
Created By
audit_logs.createdByCreated By captures the user or automation that performed the action. It keeps the provider-reported person or account context attached to the record.- Enables: attribute the audit log event record to the provider-reported person or account represented by created by.
- Interpretation: The provider supplies
createdByas identity or attribution context on each audit log event record. In Miro, created by is attribution or membership context for the work record, not a measure of an individual’s performance.
Email
audit_logs.createdBy.emailEmail records email address of the creator when type is user. It keeps the provider-reported person or account context attached to the record.- Enables: attribute the audit created by record to the provider-reported person or account represented by email.
- Interpretation: The provider supplies
emailas identity or attribution context on each audit created by record. In Miro, email is attribution or membership context for the work record, not a measure of an individual’s performance.
ID
ID
audit_logs.createdBy.idID is the unique identifier of the creator. It is needed to resolve references that repeat the same provider identifier.- Enables: match audit log records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
- Interpretation: The provider supplies
idas a record-level identifier onAuditCreatedBy. It is not a uniqueness guarantee unless a connector directive says so.
Name
Name
audit_logs.createdBy.nameName records display name of the creator. It keeps the provider-reported person or account context attached to the record.- Enables: attribute the audit created by record to the provider-reported person or account represented by name.
- Interpretation: The provider supplies
nameas identity or attribution context on each audit created by record. In Miro, name is attribution or membership context for the work record, not a measure of an individual’s performance.
Type
Type
audit_logs.createdBy.typeType states type of the creator (user, application, scim_provisioner, miro_automation). It preserves the provider’s current classification of this record.- Enables: separate audit log records by the exact provider-reported type value when describing their recorded state.
- Interpretation: The provider supplies
typeper audit created by record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, type is the work record’s classification, not an individual-performance measure.
Details
Details
audit_logs.detailsDetails records event-specific detail object. Shape varies by event type (e.g., board_opened, sign_in_succeeded). Branch on the parent event field. It retains configured attributes whose keys or shape are not fixed by this base schema.- Enables: interpret details according to the provider and Workspace configuration that produced each audit log record.
- Interpretation: Keys and value shapes within
detailscan vary with provider and customer configuration; consumers must inspect the observed Workspace schema rather than assume a fixed contract.
Event
Event
audit_logs.eventEvent states type/name of the audit event. It preserves the provider’s current classification of this record.- Enables: separate audit log records by the exact provider-reported event value when describing their recorded state.
- Interpretation: The provider supplies
eventper audit log event record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, event is the work record’s classification, not an individual-performance measure.
ID
ID
audit_logs.idID is the unique identifier of the audit event. It supplies the declared record identity used when repeated ingestions represent the same source row.- Enables: recognize repeated ingestions of the same audit log event source row before constructing its represented state.
- Interpretation: The provider supplies
idat one value per audit log event record, andx-transformDedupKeyexplicitly marks it as the record key.
Object
Object
audit_logs.objectObject captures the object that was acted upon. It preserves the containing or referenced object needed to reconstruct the provider relationship.- Enables: expand the nested object object into its declared child fields for each audit log event record.
- Interpretation: The provider returns
objectas a nested object or reference onAuditLogEvent; an absent value does not prove that no related object exists outside the credential’s visibility.
Email
audit_logs.object.emailEmail records email address of the object, if the object is a user. It keeps the provider-reported person or account context attached to the record.- Enables: attribute the audit object record to the provider-reported person or account represented by email.
- Interpretation: The provider supplies
emailas identity or attribution context on each audit object record. In Miro, email is attribution or membership context for the work record, not a measure of an individual’s performance.
ID
ID
audit_logs.object.idID is the unique identifier of the object. It is needed to resolve references that repeat the same provider identifier.- Enables: match audit log records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
- Interpretation: The provider supplies
idas a record-level identifier onAuditObject. It is not a uniqueness guarantee unless a connector directive says so.
Name
Name
audit_logs.object.nameName records display name or title of the object. It keeps the exact text, label, or authored value needed to interpret the record.- Enables: inspect the exact name value attached to each audit object record.
- Interpretation: The provider supplies
nameat audit object granularity in the format stated by its description; omitted or redacted content remains unknown.
Type
Type
audit_logs.object.typeType states type of the object. It preserves the provider’s current classification of this record.- Enables: separate audit log records by the exact provider-reported type value when describing their recorded state.
- Interpretation: The provider supplies
typeper audit object record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, type is the work record’s classification, not an individual-performance measure.
Type
Type
audit_logs.typeType states type of the resource, typically ‘event’. It preserves the provider’s current classification of this record.- Enables: separate audit log records by the exact provider-reported type value when describing their recorded state.
- Interpretation: The provider supplies
typeper audit log event record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, type is the work record’s classification, not an individual-performance measure.
Board Connectors
Board Connectors
board_connectorsBoard Connectors contain all connectors (lines/arrows connecting items) from a specific Miro board. Requires board_id from parent boards tap.- Enables: reconstruct the lines and arrows that connect items on a board.
- Scope: Reads the declared collection through
GET /{apiVersion}/boards/{board_id}/connectorsas a full snapshot. Results contain only boards and child records visible to the configured token.
Board ID
Board ID
board_connectors.board_idBoard ID identifies parent id injected by the ingestor from the boards to board_connectors traversal parentContextFields. Not part of the upstream API response; written into each row at bronze ingestion time. It is needed to resolve references that repeat the same provider identifier.- Enables: match board connector records to provider records that carry the same board ID, without assuming that this field alone makes every row unique.
- Interpretation: The provider supplies
board_idas a record-level identifier onBoardConnector. It is not a uniqueness guarantee unless a connector directive says so.
Captions
Captions
board_connectors.captionsCaptions records text captions displayed on the connector. It keeps the exact text, label, or authored value needed to interpret the record.- Enables: inspect the exact captions value attached to each board connector record.
- Interpretation: The provider supplies
captionsat board connector granularity in the format stated by its description; omitted or redacted content remains unknown.
Content
Content
board_connectors.captions.contentContent captures the text content of the caption. It keeps the exact text, label, or authored value needed to interpret the record.- Enables: inspect the exact content value attached to each connector caption record.
- Interpretation: The provider supplies
contentat connector caption granularity in the format stated by its description; omitted or redacted content remains unknown.
Position
Position
board_connectors.captions.positionPosition records position of the caption along the connector (0.0 to 1.0). It preserves the geographic, locale, time-zone, or coordinate context represented by the field.- Enables: place the represented design or board object using its provider canvas position.
- Interpretation: The provider supplies
positionin its canvas coordinate system for this object; it is not a geographic coordinate.
Text Align Vertical
Text Align Vertical
board_connectors.captions.textAlignVerticalText Align Vertical records vertical text alignment of the caption. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied text align vertical for the represented design or board object.
- Interpretation: The provider supplies
textAlignVerticalin its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Created At
Created At
board_connectors.createdAtCreated At records ISO 8601 timestamp when the connector was created. It anchors the named event or boundary on the record’s timeline.- Enables: place board connector records on a timeline by created at and select the records within an explicit reporting window.
- Interpretation: The provider supplies
createdAtper board connector record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
Created By
Created By
board_connectors.createdByCreated By records user who created the connector. It keeps the provider-reported person or account context attached to the record.- Enables: attribute the board connector record to the provider-reported person or account represented by created by.
- Interpretation: The provider supplies
createdByas identity or attribution context on each board connector record. In Miro, created by is attribution or membership context for the work record, not a measure of an individual’s performance.
ID
ID
board_connectors.createdBy.idID is the unique identifier of the user. It is needed to resolve references that repeat the same provider identifier.- Enables: match board connector records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
- Interpretation: The provider supplies
idas a record-level identifier onUserReference. It is not a uniqueness guarantee unless a connector directive says so.
Type
Type
board_connectors.createdBy.typeType states resource type, typically ‘user’. It preserves the provider’s current classification of this record.- Enables: separate board connector records by the exact provider-reported type value when describing their recorded state.
- Interpretation: The provider supplies
typeper user reference record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, type is the work record’s classification, not an individual-performance measure.
End Item
End Item
board_connectors.endItemEnd Item records end item reference for the connector. It preserves the containing or referenced object needed to reconstruct the provider relationship.- Enables: enumerate the nested end item records contained by each board connector record.
- Interpretation: The provider returns
endItemas a nested object or reference onBoardConnector; an absent value does not prove that no related object exists outside the credential’s visibility.
ID
ID
board_connectors.endItem.idID is the unique identifier of the connected item. It is needed to resolve references that repeat the same provider identifier.- Enables: match board connector records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
- Interpretation: The provider supplies
idas a record-level identifier onConnectorEndpoint. It is not a uniqueness guarantee unless a connector directive says so.
Position
Position
board_connectors.endItem.positionPosition groups the relative X and Y coordinates where the connector attaches to an item. It preserves the endpoint placement needed to reconstruct the connector.- Enables: reproduce connector attachment points and compare endpoint placement on board items.
- Interpretation: The provider returns
positionas a nested coordinate object with each axis expressed as a 0-to-1 relative value, not an ordinal rank.
X Coordinate
X Coordinate
board_connectors.endItem.position.xX Coordinate records relative X position (0.0 = left, 1.0 = right). It preserves the geographic, locale, time-zone, or coordinate context represented by the field.- Enables: place the represented design or board object using its provider canvas x coordinate.
- Interpretation: The provider supplies
xin its canvas coordinate system for this object; it is not a geographic coordinate.
Y Coordinate
Y Coordinate
board_connectors.endItem.position.yY Coordinate records relative Y position (0.0 = top, 1.0 = bottom). It preserves the geographic, locale, time-zone, or coordinate context represented by the field.- Enables: place the represented design or board object using its provider canvas y coordinate.
- Interpretation: The provider supplies
yin its canvas coordinate system for this object; it is not a geographic coordinate.
Snap To
Snap To
board_connectors.endItem.snapToSnap To records snap-to point on the item. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied snap to for the represented design or board object.
- Interpretation: The provider supplies
snapToin its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
ID
ID
board_connectors.idID is the unique identifier of the connector. It supplies the declared record identity used when repeated ingestions represent the same source row.- Enables: recognize repeated ingestions of the same board connector source row before constructing its represented state.
- Interpretation: The provider supplies
idat one value per board connector record, andx-transformDedupKeyexplicitly marks it as the record key.
Is Supported
Is Supported
board_connectors.isSupportedIs Supported indicates whether the connector is supported in the current context. It preserves the provider-reported yes-or-no condition for this record.- Enables: select board connector records for which the provider reports is supported as true or false.
- Interpretation: The provider supplies
isSupportedas a boolean per board connector record; false and missing are distinct when the field is optional. In Miro, is supported is a condition on the work record, not an individual-performance measure.
Links
Links
board_connectors.linksLinks groups the provider URLs for the board connector resource. It preserves the exact resource reference returned with the connector.- Enables: open the connector resource without treating the link object as an integration or inline connector snapshot.
- Interpretation: The provider returns
linksas a nestedConnectorLinksobject; each value is a resource locator whose availability still follows provider permissions.
Self
Self
board_connectors.links.selfSelf records URL to the connector resource itself. It retains the exact provider location for the referenced resource.- Enables: open or trace the exact provider resource referenced by self on a connector link record.
- Interpretation: The provider supplies
selfas a URL or resource locator on each connector link record. Availability still follows the provider’s permissions and retention.
Modified At
Modified At
board_connectors.modifiedAtModified At records ISO 8601 timestamp when the connector was last modified. It anchors the named event or boundary on the record’s timeline.- Enables: place board connector records on a timeline by modified at and select the records within an explicit reporting window.
- Interpretation: The provider supplies
modifiedAtper board connector record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
Modified By
Modified By
board_connectors.modifiedByModified By records user who last modified the connector. It keeps the provider-reported person or account context attached to the record.- Enables: attribute the board connector record to the provider-reported person or account represented by modified by.
- Interpretation: The provider supplies
modifiedByas identity or attribution context on each board connector record. In Miro, modified by is attribution or membership context for the work record, not a measure of an individual’s performance.
Shape
Shape
board_connectors.shapeShape records shape/type of the connector line (straight, elbowed, curved). It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied shape for the represented design or board object.
- Interpretation: The provider supplies
shapein its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Start Item
Start Item
board_connectors.startItemStart Item records start item reference for the connector. It preserves the containing or referenced object needed to reconstruct the provider relationship.- Enables: enumerate the nested start item records contained by each board connector record.
- Interpretation: The provider returns
startItemas a nested object or reference onBoardConnector; an absent value does not prove that no related object exists outside the credential’s visibility.
Style
Style
board_connectors.styleStyle records visual style of the connector (color, stroke, etc.). It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied style for the represented design or board object.
- Interpretation: The provider supplies
stylein its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Color
Color
board_connectors.style.colorColor records hex color code of the connector line. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied color for the represented design or board object.
- Interpretation: The provider supplies
colorin its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
End Stroke Cap
End Stroke Cap
board_connectors.style.endStrokeCapEnd Stroke Cap records stroke cap style at the end of the connector. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied end stroke cap for the represented design or board object.
- Interpretation: The provider supplies
endStrokeCapin its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Font Size
Font Size
board_connectors.style.fontSizeFont Size records font size for connector captions. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied font size for the represented design or board object.
- Interpretation: The provider supplies
fontSizein its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Start Stroke Cap
Start Stroke Cap
board_connectors.style.startStrokeCapStart Stroke Cap records stroke cap style at the start of the connector. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied start stroke cap for the represented design or board object.
- Interpretation: The provider supplies
startStrokeCapin its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Stroke Color
Stroke Color
board_connectors.style.strokeColorStroke Color records stroke color of the connector line. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied stroke color for the represented design or board object.
- Interpretation: The provider supplies
strokeColorin its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Stroke Style
Stroke Style
board_connectors.style.strokeStyleStroke Style records stroke style of the connector line. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied stroke style for the represented design or board object.
- Interpretation: The provider supplies
strokeStylein its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Stroke Width
Stroke Width
board_connectors.style.strokeWidthStroke Width records width of the connector stroke. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied stroke width for the represented design or board object.
- Interpretation: The provider supplies
strokeWidthin its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Text Orientation
Text Orientation
board_connectors.style.textOrientationText Orientation records orientation of text on the connector. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied text orientation for the represented design or board object.
- Interpretation: The provider supplies
textOrientationin its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Type
Type
board_connectors.typeType states resource type, typically ‘connector’. It preserves the provider’s current classification of this record.- Enables: separate board connector records by the exact provider-reported type value when describing their recorded state.
- Interpretation: The provider supplies
typeper board connector record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, type is the work record’s classification, not an individual-performance measure.
Board Groups
Board Groups
board_groupsBoard Groups contain all groups from a specific Miro board. Groups are collections of items that are logically grouped together. Requires board_id from parent boards tap.- Enables: reconstruct the logical item groupings returned for a board.
- Scope: Reads the declared collection through
GET /{apiVersion}/boards/{board_id}/groupsas a full snapshot. Results contain only boards and child records visible to the configured token.
Board ID
Board ID
board_groups.board_idBoard ID identifies parent id injected by the ingestor from the boards to board_groups traversal parentContextFields. Not part of the upstream API response; written into each row at bronze ingestion time. It is needed to resolve references that repeat the same provider identifier.- Enables: match board group records to provider records that carry the same board ID, without assuming that this field alone makes every row unique.
- Interpretation: The provider supplies
board_idas a record-level identifier onBoardGroup. It is not a uniqueness guarantee unless a connector directive says so.
Data
Data
board_groups.dataData records group payload containing the IDs of the board items in the group. It retains configured attributes whose keys or shape are not fixed by this base schema.- Enables: interpret data according to the provider and Workspace configuration that produced each board group record.
- Interpretation: Keys and value shapes within
datacan vary with provider and customer configuration; consumers must inspect the observed Workspace schema rather than assume a fixed contract.
Items
Items
board_groups.data.itemsItems records IDs of the board items contained in the group. It preserves the containing or referenced object needed to reconstruct the provider relationship.- Enables: enumerate the nested items records contained by each board group data record.
- Interpretation: The provider returns
itemsas a list onBoardGroupData; an absent value does not prove that no related object exists outside the credential’s visibility.
ID
ID
board_groups.idID is the unique identifier of the group. It supplies the declared record identity used when repeated ingestions represent the same source row.- Enables: recognize repeated ingestions of the same board group source row before constructing its represented state.
- Interpretation: The provider supplies
idat one value per board group record, andx-transformDedupKeyexplicitly marks it as the record key.
Type
Type
board_groups.typeType states type of the resource. For groups this is typically ‘group’. It preserves the provider’s current classification of this record.- Enables: separate board group records by the exact provider-reported type value when describing their recorded state.
- Interpretation: The provider supplies
typeper board group record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, type is the work record’s classification, not an individual-performance measure.
Board Items
Board Items
board_itemsBoard Items contain all items (widgets) from a specific Miro board. Items include sticky notes, shapes, text, cards, images, documents, frames, embeds, app cards, and more. Requires board_id from parent boards tap.- Enables: inspect the exact sticky notes, shapes, cards, text, images, documents, frames, embeds, and app cards returned for each board.
- Scope: Reads the declared collection through
GET /{apiVersion}/boards/{board_id}/itemsas a full snapshot. Results contain only boards and child records visible to the configured token.
Board ID
Board ID
board_items.board_idBoard ID identifies parent id injected by the ingestor from the boards to board_items traversal parentContextFields. Not part of the upstream API response; written into each row at bronze ingestion time. It is needed to resolve references that repeat the same provider identifier.- Enables: match board item records to provider records that carry the same board ID, without assuming that this field alone makes every row unique.
- Interpretation: The provider supplies
board_idas a record-level identifier onBoardItem. It is not a uniqueness guarantee unless a connector directive says so.
Created At
Created At
board_items.createdAtCreated At records ISO 8601 timestamp when the item was created. It anchors the named event or boundary on the record’s timeline.- Enables: place board item records on a timeline by created at and select the records within an explicit reporting window.
- Interpretation: The provider supplies
createdAtper board item record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
Created By
Created By
board_items.createdByCreated By records user who created the item. It keeps the provider-reported person or account context attached to the record.- Enables: attribute the board item record to the provider-reported person or account represented by created by.
- Interpretation: The provider supplies
createdByas identity or attribution context on each board item record. In Miro, created by is attribution or membership context for the work record, not a measure of an individual’s performance.
ID
ID
board_items.createdBy.idID is the unique identifier of the user. It is needed to resolve references that repeat the same provider identifier.- Enables: match board item records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
- Interpretation: The provider supplies
idas a record-level identifier onUserReference. It is not a uniqueness guarantee unless a connector directive says so.
Name
Name
board_items.createdBy.nameName records display name of the user. It keeps the provider-reported person or account context attached to the record.- Enables: attribute the user reference record to the provider-reported person or account represented by name.
- Interpretation: The provider supplies
nameas identity or attribution context on each user reference record. In Miro, name is attribution or membership context for the work record, not a measure of an individual’s performance.
Type
Type
board_items.createdBy.typeType states type of the reference, typically ‘user’. It preserves the provider’s current classification of this record.- Enables: separate board item records by the exact provider-reported type value when describing their recorded state.
- Interpretation: The provider supplies
typeper user reference record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, type is the work record’s classification, not an individual-performance measure.
Data
Data
board_items.dataData records item-specific data content such as text, title, description, URL, and other type-dependent fields. It retains configured attributes whose keys or shape are not fixed by this base schema.- Enables: interpret data according to the provider and Workspace configuration that produced each board item record.
- Interpretation: Keys and value shapes within
datacan vary with provider and customer configuration; consumers must inspect the observed Workspace schema rather than assume a fixed contract.
Assignee ID
Assignee ID
board_items.data.assigneeIdAssignee ID identifies user ID of the assignee for card items. It is needed to resolve references that repeat the same provider identifier.- Enables: match board item records to provider records that carry the same assignee ID, without assuming that this field alone makes every row unique.
- Interpretation: The provider supplies
assigneeIdas a record-level identifier onItemData. It is not a uniqueness guarantee unless a connector directive says so.
Content
Content
board_items.data.contentContent records text or HTML content of the item (sticky notes, shapes, text items). It keeps the exact text, label, or authored value needed to interpret the record.- Enables: inspect the exact content value attached to each item data record.
- Interpretation: The provider supplies
contentat item data granularity in the format stated by its description; omitted or redacted content remains unknown.
Description
Description
board_items.data.descriptionDescription records description of the item (cards, app cards). It keeps the exact text, label, or authored value needed to interpret the record.- Enables: inspect the exact description value attached to each item data record.
- Interpretation: The provider supplies
descriptionat item data granularity in the format stated by its description; omitted or redacted content remains unknown.
Due Date
Due Date
board_items.data.dueDateDue Date records due date for card items in ISO 8601 format. It anchors the named event or boundary on the record’s timeline.- Enables: place board item records on a timeline by due date and select the records within an explicit reporting window.
- Interpretation: The provider supplies
dueDateper item data record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
Fields
Fields
board_items.data.fieldsFields records custom fields for app card items. It retains configured attributes whose keys or shape are not fixed by this base schema.- Enables: interpret fields according to the provider and Workspace configuration that produced each board item record.
- Interpretation: Keys and value shapes within
fieldscan vary with provider and customer configuration; consumers must inspect the observed Workspace schema rather than assume a fixed contract.
Fill Color
Fill Color
board_items.data.fields.fillColorFill Color records background fill color of the field in hex format. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied fill color for the represented design or board object.
- Interpretation: The provider supplies
fillColorin its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Icon Shape
Icon Shape
board_items.data.fields.iconShapeIcon Shape records shape of the icon in the field. It retains the exact provider location for the referenced resource.- Enables: open or trace the exact provider resource referenced by icon shape on a app card field record.
- Interpretation: The provider supplies
iconShapeas a URL or resource locator on each app card field record. Availability still follows the provider’s permissions and retention.
Icon URL
Icon URL
board_items.data.fields.iconUrlIcon URL records URL of the icon displayed in the field. It retains the exact provider location for the referenced resource.- Enables: open or trace the exact provider resource referenced by icon URL on a app card field record.
- Interpretation: The provider supplies
iconUrlas a URL or resource locator on each app card field record. Availability still follows the provider’s permissions and retention.
Text Color
Text Color
board_items.data.fields.textColorText Color records text color of the field in hex format. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied text color for the represented design or board object.
- Interpretation: The provider supplies
textColorin its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Tooltip
Tooltip
board_items.data.fields.tooltipTooltip records tooltip text for the field. It keeps the exact text, label, or authored value needed to interpret the record.- Enables: inspect the exact tooltip value attached to each app card field record.
- Interpretation: The provider supplies
tooltipat app card field granularity in the format stated by its description; omitted or redacted content remains unknown.
Value
Value
board_items.data.fields.valueValue records display value of the field. It preserves the recorded before, after, or contextual value needed to explain a change event.- Enables: compare the recorded value with the corresponding changed attribute when explaining an audit or changelog event.
- Interpretation: The provider supplies
valueon each change record in the changed attribute’s own type or display format; it is not normalized into a common unit.
Format
Format
board_items.data.formatFormat records format type for frame items. It preserves the configuration or technical value needed to explain how the provider object is defined.- Enables: inspect the exact format when validating the configuration or technical definition of a item data record.
- Interpretation: The provider supplies
formatas configuration or technical metadata onItemData; consumers must preserve the exact syntax and documented vocabulary.
Image URL
Image URL
board_items.data.imageUrlImage URL records URL of the image resource for image items. It retains the exact provider location for the referenced resource.- Enables: open or trace the exact provider resource referenced by image URL on a item data record.
- Interpretation: The provider supplies
imageUrlas a URL or resource locator on each item data record. Availability still follows the provider’s permissions and retention.
Mode
Mode
board_items.data.modeMode states display mode for embed items. It preserves the provider’s current classification of this record.- Enables: separate board item records by the exact provider-reported mode value when describing their recorded state.
- Interpretation: The provider supplies
modeper item data record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, mode is the work record’s classification, not an individual-performance measure.
Preview URL
Preview URL
board_items.data.previewUrlPreview URL records preview URL for embed items. It retains the exact provider location for the referenced resource.- Enables: open or trace the exact provider resource referenced by preview URL on a item data record.
- Interpretation: The provider supplies
previewUrlas a URL or resource locator on each item data record. Availability still follows the provider’s permissions and retention.
Shape
Shape
board_items.data.shapeShape records shape type for shape items (rectangle, circle, triangle, etc.). It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied shape for the represented design or board object.
- Interpretation: The provider supplies
shapein its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Show Content
Show Content
board_items.data.showContentShow Content indicates whether to show content inside a frame. It preserves the provider-reported yes-or-no condition for this record.- Enables: select board item records for which the provider reports show content as true or false.
- Interpretation: The provider supplies
showContentas a boolean per item data record; false and missing are distinct when the field is optional. In Miro, show content is a condition on the work record, not an individual-performance measure.
Status
Status
board_items.data.statusStatus states status of an app card item. It preserves the provider’s current classification of this record.- Enables: separate board item records by the exact provider-reported status value when describing their recorded state.
- Interpretation: The provider supplies
statusper item data record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, status is the work record’s classification, not an individual-performance measure.
Title
Title
board_items.data.titleTitle records title of the item (cards, app cards, images, documents, frames). It keeps the exact text, label, or authored value needed to interpret the record.- Enables: inspect the exact title value attached to each item data record.
- Interpretation: The provider supplies
titleat item data granularity in the format stated by its description; omitted or redacted content remains unknown.
Type
Type
board_items.data.typeType states sub-type qualifier within the data object. It preserves the provider’s current classification of this record.- Enables: separate board item records by the exact provider-reported type value when describing their recorded state.
- Interpretation: The provider supplies
typeper item data record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, type is the work record’s classification, not an individual-performance measure.
URL
URL
board_items.data.urlURL records URL associated with the item (images, documents, embeds). It retains the exact provider location for the referenced resource.- Enables: open or trace the exact provider resource referenced by URL on a item data record.
- Interpretation: The provider supplies
urlas a URL or resource locator on each item data record. Availability still follows the provider’s permissions and retention.
Geometry
Geometry
board_items.geometryGeometry groups the board item’s width, height, and rotation. It preserves the dimensions and orientation needed to reconstruct the item on the canvas.- Enables: compare item footprints and reproduce board layout using the declared dimension units.
- Interpretation: The provider returns
geometryas a nested object: width and height are in density-independent pixels, while rotation is in degrees.
Height
Height
board_items.geometry.heightHeight reports the board item’s vertical dimension in density-independent pixels (dp). It preserves the provider’s canvas sizing unit.- Enables: compare item footprints and reproduce vertical sizing on the board.
- Interpretation: The provider supplies
heightas a numericdpvalue per geometry object; zero and missing are not interchangeable.
Rotation
Rotation
board_items.geometry.rotationRotation reports the board item’s orientation in degrees from 0 through 360. It preserves the provider’s angular canvas setting.- Enables: reproduce item orientation and identify rotated content in board layouts.
- Interpretation: The provider supplies
rotationas a numeric degree value per geometry object; zero means no rotation and missing means no angle was reported.
Width
Width
board_items.geometry.widthWidth reports the board item’s horizontal dimension in density-independent pixels (dp). It preserves the provider’s canvas sizing unit.- Enables: compare item footprints and reproduce horizontal sizing on the board.
- Interpretation: The provider supplies
widthas a numericdpvalue per geometry object; zero and missing are not interchangeable.
ID
ID
board_items.idID is the unique identifier of the item. It supplies the declared record identity used when repeated ingestions represent the same source row.- Enables: recognize repeated ingestions of the same board item source row before constructing its represented state.
- Interpretation: The provider supplies
idat one value per board item record, andx-transformDedupKeyexplicitly marks it as the record key.
Is Supported
Is Supported
board_items.isSupportedIs Supported indicates whether the item type is fully supported by the API. It preserves the provider-reported yes-or-no condition for this record.- Enables: select board item records for which the provider reports is supported as true or false.
- Interpretation: The provider supplies
isSupportedas a boolean per board item record; false and missing are distinct when the field is optional. In Miro, is supported is a condition on the work record, not an individual-performance measure.
Links
Links
board_items.linksLinks groups the provider URLs for the board item and related resources. It preserves resource references returned with the item.- Enables: open the exact item or follow its related-resource link without treating linked resources as inline snapshots.
- Interpretation: The provider returns
linksas a nestedItemLinksobject; each value is a resource locator whose availability still follows provider permissions.
Related
Related
board_items.links.relatedRelated records URL to related resources. It retains the exact provider location for the referenced resource.- Enables: open or trace the exact provider resource referenced by related on a item link record.
- Interpretation: The provider supplies
relatedas a URL or resource locator on each item link record. Availability still follows the provider’s permissions and retention.
Self
Self
board_items.links.selfSelf records URL to the item resource itself. It retains the exact provider location for the referenced resource.- Enables: open or trace the exact provider resource referenced by self on a item link record.
- Interpretation: The provider supplies
selfas a URL or resource locator on each item link record. Availability still follows the provider’s permissions and retention.
Modified At
Modified At
board_items.modifiedAtModified At records ISO 8601 timestamp when the item was last modified. It anchors the named event or boundary on the record’s timeline.- Enables: place board item records on a timeline by modified at and select the records within an explicit reporting window.
- Interpretation: The provider supplies
modifiedAtper board item record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
Modified By
Modified By
board_items.modifiedByModified By records user who last modified the item. It keeps the provider-reported person or account context attached to the record.- Enables: attribute the board item record to the provider-reported person or account represented by modified by.
- Interpretation: The provider supplies
modifiedByas identity or attribution context on each board item record. In Miro, modified by is attribution or membership context for the work record, not a measure of an individual’s performance.
Parent
Parent
board_items.parentParent records parent item reference, e.g. a frame that contains this item. It preserves the containing or referenced object needed to reconstruct the provider relationship.- Enables: reconstruct the parent-child structure expressed by parent on each board item record.
- Interpretation: The provider returns
parentas a nested object or reference onBoardItem; an absent value does not prove that no related object exists outside the credential’s visibility.
ID
ID
board_items.parent.idID is the unique identifier of the parent item. It is needed to resolve references that repeat the same provider identifier.- Enables: match board item records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
- Interpretation: The provider supplies
idas a record-level identifier onParentReference. It is not a uniqueness guarantee unless a connector directive says so.
Links
Links
board_items.parent.linksLinks groups the provider URLs that identify the parent item resource. It preserves the resource reference carried by the parent relationship.- Enables: open the exact parent item while keeping the parent reference distinct from an inline item snapshot.
- Interpretation: The provider returns
linksas a nestedItemLinksobject; each value is a resource locator whose availability still follows provider permissions.
Position
Position
board_items.positionPosition records position of the item on the board (x, y coordinates and optional origin). It preserves the geographic, locale, time-zone, or coordinate context represented by the field.- Enables: place the represented design or board object using its provider canvas position.
- Interpretation: The provider supplies
positionin its canvas coordinate system for this object; it is not a geographic coordinate.
Origin
Origin
board_items.position.originOrigin captures the origin point for the position coordinates (e.g., center). It preserves the geographic, locale, time-zone, or coordinate context represented by the field.- Enables: place the represented design or board object using its provider canvas origin.
- Interpretation: The provider supplies
originin its canvas coordinate system for this object; it is not a geographic coordinate.
Relative To
Relative To
board_items.position.relativeToRelative To reports indicates what the position is relative to (canvas_center, parent_top_left). It preserves the stated measure at this record’s granularity.- Enables: order or classify board item records using the provider-defined relative to value.
- Interpretation: The provider supplies
relativeToat position granularity as a provider-defined ordinal or planning value rather than elapsed time or money; zero and missing are not interchangeable.
X Coordinate
X Coordinate
board_items.position.xX Coordinate records x-axis coordinate of the item in dp. It preserves the geographic, locale, time-zone, or coordinate context represented by the field.- Enables: place the represented design or board object using its provider canvas x coordinate.
- Interpretation: The provider supplies
xin its canvas coordinate system for this object; it is not a geographic coordinate.
Y Coordinate
Y Coordinate
board_items.position.yY Coordinate records y-axis coordinate of the item in dp. It preserves the geographic, locale, time-zone, or coordinate context represented by the field.- Enables: place the represented design or board object using its provider canvas y coordinate.
- Interpretation: The provider supplies
yin its canvas coordinate system for this object; it is not a geographic coordinate.
Style
Style
board_items.styleStyle records visual style properties of the item (colors, fonts, borders, etc.). It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied style for the represented design or board object.
- Interpretation: The provider supplies
stylein its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Border Color
Border Color
board_items.style.borderColorBorder Color records border color in hex format. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied border color for the represented design or board object.
- Interpretation: The provider supplies
borderColorin its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Border Opacity
Border Opacity
board_items.style.borderOpacityBorder Opacity records border opacity as a string value. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied border opacity for the represented design or board object.
- Interpretation: The provider supplies
borderOpacityin its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Border Style
Border Style
board_items.style.borderStyleBorder Style records border style (normal, dashed, dotted). It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied border style for the represented design or board object.
- Interpretation: The provider supplies
borderStylein its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Border Width
Border Width
board_items.style.borderWidthBorder Width records border width as a string value. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied border width for the represented design or board object.
- Interpretation: The provider supplies
borderWidthin its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Card Theme
Card Theme
board_items.style.cardThemeCard Theme records theme color for card items in hex format. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied card theme for the represented design or board object.
- Interpretation: The provider supplies
cardThemein its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Color
Color
board_items.style.colorColor records text or foreground color in hex format. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied color for the represented design or board object.
- Interpretation: The provider supplies
colorin its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Fill Color
Fill Color
board_items.style.fillColorFill Color records background fill color in hex format. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied fill color for the represented design or board object.
- Interpretation: The provider supplies
fillColorin its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Fill Opacity
Fill Opacity
board_items.style.fillOpacityFill Opacity records fill opacity as a string value. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied fill opacity for the represented design or board object.
- Interpretation: The provider supplies
fillOpacityin its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Font Family
Font Family
board_items.style.fontFamilyFont Family records font family used for text rendering. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied font family for the represented design or board object.
- Interpretation: The provider supplies
fontFamilyin its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Font Size
Font Size
board_items.style.fontSizeFont Size records font size in points as a string. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied font size for the represented design or board object.
- Interpretation: The provider supplies
fontSizein its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Sticky Note Shape
Sticky Note Shape
board_items.style.stickyNoteShapeSticky Note Shape records shape of the sticky note (square, rectangle). It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied sticky note shape for the represented design or board object.
- Interpretation: The provider supplies
stickyNoteShapein its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Text Align
Text Align
board_items.style.textAlignText Align records horizontal text alignment. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied text align for the represented design or board object.
- Interpretation: The provider supplies
textAlignin its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Text Align Vertical
Text Align Vertical
board_items.style.textAlignVerticalText Align Vertical records vertical text alignment. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied text align vertical for the represented design or board object.
- Interpretation: The provider supplies
textAlignVerticalin its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
Type
Type
board_items.typeType states type of the item on the board. It preserves the provider’s current classification of this record.- Enables: separate board item records by the exact provider-reported type value when describing their recorded state.
- Interpretation: The provider supplies
typeper board item record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, type is the work record’s classification, not an individual-performance measure.
Board Members
Board Members
board_membersBoard Members contain all members of a specific Miro board, including their roles and permissions. Requires board_id from parent boards tap.- Enables: describe board membership and provider-reported roles as collaboration context.
- Scope: Reads the declared collection through
GET /{apiVersion}/boards/{board_id}/membersas a full snapshot. Results contain only boards and child records visible to the configured token.
Board ID
Board ID
board_members.board_idBoard ID identifies parent id injected by the ingestor from the boards to board_members traversal parentContextFields. Not part of the upstream API response; written into each row at bronze ingestion time. It is needed to resolve references that repeat the same provider identifier.- Enables: match board member records to provider records that carry the same board ID, without assuming that this field alone makes every row unique.
- Interpretation: The provider supplies
board_idas a record-level identifier onBoardMember. It is not a uniqueness guarantee unless a connector directive says so.
ID
ID
board_members.idID is the unique identifier of the board member. It supplies the declared record identity used when repeated ingestions represent the same source row.- Enables: recognize repeated ingestions of the same board member source row before constructing its represented state.
- Interpretation: The provider supplies
idat one value per board member record, andx-transformDedupKeyexplicitly marks it as the record key.
Links
Links
board_members.linksLinks groups the provider URLs for the board-member resource and related profile. It preserves resource references returned with the membership.- Enables: open the exact board-member resource or follow its related profile without treating either link as an inline user snapshot.
- Interpretation: The provider returns
linksas a nestedBoardMemberLinksobject; each value is a resource locator whose availability still follows provider permissions.
Related
Related
board_members.links.relatedRelated records URL to a related resource, such as the user profile. It retains the exact provider location for the referenced resource.- Enables: open or trace the exact provider resource referenced by related on a board member link record.
- Interpretation: The provider supplies
relatedas a URL or resource locator on each board member link record. Availability still follows the provider’s permissions and retention.
Self
Self
board_members.links.selfSelf records URL to the board member resource itself. It retains the exact provider location for the referenced resource.- Enables: open or trace the exact provider resource referenced by self on a board member link record.
- Interpretation: The provider supplies
selfas a URL or resource locator on each board member link record. Availability still follows the provider’s permissions and retention.
Name
Name
board_members.nameName records display name of the board member. It keeps the provider-reported person or account context attached to the record.- Enables: attribute the board member record to the provider-reported person or account represented by name.
- Interpretation: The provider supplies
nameas identity or attribution context on each board member record. In Miro, name is attribution or membership context for the work record, not a measure of an individual’s performance.
Role
Role
board_members.roleRole states role of the member on the board (viewer, commenter, editor, coowner, owner). It documents the access-related value reported for this object or membership.- Enables: describe the provider-reported role attached to each board member record.
- Interpretation: The provider supplies
roleat board member granularity. It describes provider-reported context and does not prove effective access beyond the returned record. In Miro, role is access or membership context, not an individual-performance measure.
Type
Type
board_members.typeType states type of the resource, typically ‘board_member’. It preserves the provider’s current classification of this record.- Enables: separate board member records by the exact provider-reported type value when describing their recorded state.
- Interpretation: The provider supplies
typeper board member record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, type is the work record’s classification, not an individual-performance measure.
Board Tags
Board Tags
board_tagsBoard Tags contain all tags defined on a specific Miro board. Tags are used to categorize and label items. Requires board_id from parent boards tap.- Enables: apply each board’s defined tags to the items that reference them.
- Scope: Reads the declared collection through
GET /{apiVersion}/boards/{board_id}/tagsas a full snapshot. Results contain only boards and child records visible to the configured token.
Board ID
Board ID
board_tags.board_idBoard ID identifies parent id injected by the ingestor from the boards to board_tags traversal parentContextFields. Not part of the upstream API response; written into each row at bronze ingestion time. It is needed to resolve references that repeat the same provider identifier.- Enables: match board tag records to provider records that carry the same board ID, without assuming that this field alone makes every row unique.
- Interpretation: The provider supplies
board_idas a record-level identifier onBoardTag. It is not a uniqueness guarantee unless a connector directive says so.
Fill Color
Fill Color
board_tags.fillColorFill Color records fill color of the tag. It preserves the provider’s visual treatment for the represented object.- Enables: reproduce or compare the provider-supplied fill color for the represented design or board object.
- Interpretation: The provider supplies
fillColorin its own color, opacity, stroke, emoji, or style vocabulary for the represented object.
ID
ID
board_tags.idID is the unique identifier of the tag. It supplies the declared record identity used when repeated ingestions represent the same source row.- Enables: recognize repeated ingestions of the same board tag source row before constructing its represented state.
- Interpretation: The provider supplies
idat one value per board tag record, andx-transformDedupKeyexplicitly marks it as the record key.
Title
Title
board_tags.titleTitle records title or label text of the tag. It keeps the exact text, label, or authored value needed to interpret the record.- Enables: inspect the exact title value attached to each board tag record.
- Interpretation: The provider supplies
titleat board tag granularity in the format stated by its description; omitted or redacted content remains unknown.
Type
Type
board_tags.typeType states type of the resource. Always ‘tag’ for tag objects. It preserves the provider’s current classification of this record.- Enables: separate board tag records by the exact provider-reported type value when describing their recorded state.
- Interpretation: The provider supplies
typeper board tag record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, type is the work record’s classification, not an individual-performance measure.
Boards
Boards
boardsBoards contain all boards accessible to the authenticated user from Miro. Boards are the central resource in Miro, containing items, members, and collaboration data.- Enables: enumerate accessible whiteboards before resolving their items and membership records.
- Scope: Reads the declared collection through
GET /{apiVersion}/boardsas a full snapshot. Results contain only boards and child records visible to the configured token.
Created At
Created At
boards.createdAtCreated At records ISO 8601 timestamp when the board was created. It anchors the named event or boundary on the record’s timeline.- Enables: place board records on a timeline by created at and select the records within an explicit reporting window.
- Interpretation: The provider supplies
createdAtper board record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
Created By
Created By
boards.createdByCreated By records user who created the board. It keeps the provider-reported person or account context attached to the record.- Enables: attribute the board record to the provider-reported person or account represented by created by.
- Interpretation: The provider supplies
createdByas identity or attribution context on each board record. In Miro, created by is attribution or membership context for the work record, not a measure of an individual’s performance.
ID
ID
boards.createdBy.idID is the unique identifier of the user. It is needed to resolve references that repeat the same provider identifier.- Enables: match board records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
- Interpretation: The provider supplies
idas a record-level identifier onUserInfo. It is not a uniqueness guarantee unless a connector directive says so.
Name
Name
boards.createdBy.nameName records display name of the user. It keeps the provider-reported person or account context attached to the record.- Enables: attribute the user info record to the provider-reported person or account represented by name.
- Interpretation: The provider supplies
nameas identity or attribution context on each user info record. In Miro, name is attribution or membership context for the work record, not a measure of an individual’s performance.
Type
Type
boards.createdBy.typeType states type of the resource, typically ‘user’. It preserves the provider’s current classification of this record.- Enables: separate board records by the exact provider-reported type value when describing their recorded state.
- Interpretation: The provider supplies
typeper user info record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, type is the work record’s classification, not an individual-performance measure.
Current User Membership
Current User Membership
boards.currentUserMembershipCurrent User Membership records current authenticated user’s membership details on the board. It preserves the containing or referenced object needed to reconstruct the provider relationship.- Enables: associate each board record with the specific provider container named by current user membership.
- Interpretation: The provider returns
currentUserMembershipas a nested object or reference onBoard; an absent value does not prove that no related object exists outside the credential’s visibility.
ID
ID
boards.currentUserMembership.idID is the unique identifier of the membership. It is needed to resolve references that repeat the same provider identifier.- Enables: match board records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
- Interpretation: The provider supplies
idas a record-level identifier onCurrentUserMembership. It is not a uniqueness guarantee unless a connector directive says so.
Name
Name
boards.currentUserMembership.nameName records display name of the member. It keeps the provider-reported person or account context attached to the record.- Enables: attribute the current user membership record to the provider-reported person or account represented by name.
- Interpretation: The provider supplies
nameas identity or attribution context on each current user membership record. In Miro, name is attribution or membership context for the work record, not a measure of an individual’s performance.
Role
Role
boards.currentUserMembership.roleRole states role of the current user on the board. It documents the access-related value reported for this object or membership.- Enables: describe the provider-reported role attached to each current user membership record.
- Interpretation: The provider supplies
roleat current user membership granularity. It describes provider-reported context and does not prove effective access beyond the returned record. In Miro, role is access or membership context, not an individual-performance measure.
Type
Type
boards.currentUserMembership.typeType states type of the resource, typically ‘board_member’. It preserves the provider’s current classification of this record.- Enables: separate board records by the exact provider-reported type value when describing their recorded state.
- Interpretation: The provider supplies
typeper current user membership record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, type is the work record’s classification, not an individual-performance measure.
Description
Description
boards.descriptionDescription records description of the board. It keeps the exact text, label, or authored value needed to interpret the record.- Enables: inspect the exact description value attached to each board record.
- Interpretation: The provider supplies
descriptionat board granularity in the format stated by its description; omitted or redacted content remains unknown.
ID
ID
boards.idID is the unique identifier of the board. It supplies the declared record identity used when repeated ingestions represent the same source row.- Enables: recognize repeated ingestions of the same board source row before constructing its represented state.
- Interpretation: The provider supplies
idat one value per board record, andx-transformDedupKeyexplicitly marks it as the record key.
Last Opened At
Last Opened At
boards.lastOpenedAtLast Opened At records ISO 8601 timestamp when the board was last opened. It anchors the named event or boundary on the record’s timeline.- Enables: place board records on a timeline by last opened at and select the records within an explicit reporting window.
- Interpretation: The provider supplies
lastOpenedAtper board record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
Last Opened By
Last Opened By
boards.lastOpenedByLast Opened By records user who last opened the board. It keeps the provider-reported person or account context attached to the record.- Enables: attribute the board record to the provider-reported person or account represented by last opened by.
- Interpretation: The provider supplies
lastOpenedByas identity or attribution context on each board record. In Miro, last opened by is attribution or membership context for the work record, not a measure of an individual’s performance.
Links
Links
boards.linksLinks groups the provider URLs for the board resource and its related web location. It preserves resource references returned with the board.- Enables: open the exact board resource or related Miro page without treating either link as an inline snapshot.
- Interpretation: The provider returns
linksas a nestedBoardLinksobject; each value is a resource locator whose availability still follows provider permissions.
Related
Related
boards.links.relatedRelated records URL to the board in the Miro web application. It retains the exact provider location for the referenced resource.- Enables: open or trace the exact provider resource referenced by related on a board link record.
- Interpretation: The provider supplies
relatedas a URL or resource locator on each board link record. Availability still follows the provider’s permissions and retention.
Self
Self
boards.links.selfSelf records API URL for this board resource. It retains the exact provider location for the referenced resource.- Enables: open or trace the exact provider resource referenced by self on a board link record.
- Interpretation: The provider supplies
selfas a URL or resource locator on each board link record. Availability still follows the provider’s permissions and retention.
Modified At
Modified At
boards.modifiedAtModified At records ISO 8601 timestamp when the board was last modified. It anchors the named event or boundary on the record’s timeline.- Enables: place board records on a timeline by modified at and select the records within an explicit reporting window.
- Interpretation: The provider supplies
modifiedAtper board record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
Modified By
Modified By
boards.modifiedByModified By records user who last modified the board. It keeps the provider-reported person or account context attached to the record.- Enables: attribute the board record to the provider-reported person or account represented by modified by.
- Interpretation: The provider supplies
modifiedByas identity or attribution context on each board record. In Miro, modified by is attribution or membership context for the work record, not a measure of an individual’s performance.
Name
Name
boards.nameName records name/title of the board. It keeps the exact text, label, or authored value needed to interpret the record.- Enables: inspect the exact name value attached to each board record.
- Interpretation: The provider supplies
nameat board granularity in the format stated by its description; omitted or redacted content remains unknown.
Owner
Owner
boards.ownerOwner records owner of the board. It keeps the provider-reported person or account context attached to the record.- Enables: attribute the board record to the provider-reported actor represented by owner.
- Interpretation: The provider supplies
owneras identity or attribution context on each board record. In Miro, owner is attribution or membership context for the work record, not a measure of an individual’s performance.
Picture
Picture
boards.picturePicture records thumbnail/picture information for the board. It retains the exact provider location for the referenced resource.- Enables: open or trace the exact provider resource referenced by picture on a board record.
- Interpretation: The provider supplies
pictureas a URL or resource locator on each board record. Availability still follows the provider’s permissions and retention.
ID
ID
boards.picture.idID is the identifier for the picture resource. It is needed to resolve references that repeat the same provider identifier.- Enables: match board records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
- Interpretation: The provider supplies
idas a record-level identifier onPictureInfo. It is not a uniqueness guarantee unless a connector directive says so.
Image URL
Image URL
boards.picture.imageURLImage URL records URL of the board thumbnail image. It retains the exact provider location for the referenced resource.- Enables: open or trace the exact provider resource referenced by image URL on a picture info record.
- Interpretation: The provider supplies
imageURLas a URL or resource locator on each picture info record. Availability still follows the provider’s permissions and retention.
Type
Type
boards.picture.typeType states type of the picture resource. It preserves the provider’s current classification of this record.- Enables: separate board records by the exact provider-reported type value when describing their recorded state.
- Interpretation: The provider supplies
typeper picture info record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, type is the work record’s classification, not an individual-performance measure.
Policy
Policy
boards.policyPolicy states sharing and permissions policy wrapper for the board. It documents the access-related value reported for this object or membership.- Enables: describe the provider-reported policy attached to each board record.
- Interpretation: The provider supplies
policyat board granularity. It describes provider-reported context and does not prove effective access beyond the returned record.
Permissions Policy
Permissions Policy
boards.policy.permissionsPolicyPermissions Policy states permissions policy settings that control what collaborators can do on the board. It documents the access-related value reported for this object or membership.- Enables: describe the provider-reported permissions policy attached to each board policy record.
- Interpretation: The provider supplies
permissionsPolicyat board policy granularity. It describes provider-reported context and does not prove effective access beyond the returned record.
Collaboration Tools Start Access
Collaboration Tools Start Access
boards.policy.permissionsPolicy.collaborationToolsStartAccessCollaboration Tools Start Access states defines who can start using collaboration tools. It documents the access-related value reported for this object or membership.- Enables: describe the provider-reported collaboration tools start access attached to each permissions policy record.
- Interpretation: The provider supplies
collaborationToolsStartAccessat permissions policy granularity. It describes provider-reported context and does not prove effective access beyond the returned record.
Copy Access
Copy Access
boards.policy.permissionsPolicy.copyAccessCopy Access states defines who can copy the board. It documents the access-related value reported for this object or membership.- Enables: describe the provider-reported copy access attached to each permissions policy record.
- Interpretation: The provider supplies
copyAccessat permissions policy granularity. It describes provider-reported context and does not prove effective access beyond the returned record.
Copy Access Level
Copy Access Level
boards.policy.permissionsPolicy.copyAccessLevelCopy Access Level states defines the copy access level for the board. It documents the access-related value reported for this object or membership.- Enables: describe the provider-reported copy access level attached to each permissions policy record.
- Interpretation: The provider supplies
copyAccessLevelat permissions policy granularity. It describes provider-reported context and does not prove effective access beyond the returned record.
Sharing Access
Sharing Access
boards.policy.permissionsPolicy.sharingAccessSharing Access states defines who can change the board’s sharing and permissions settings. It documents the access-related value reported for this object or membership.- Enables: describe the provider-reported sharing access attached to each permissions policy record.
- Interpretation: The provider supplies
sharingAccessat permissions policy granularity. It describes provider-reported context and does not prove effective access beyond the returned record.
Sharing Policy
Sharing Policy
boards.policy.sharingPolicySharing Policy states sharing policy settings that control how the board can be shared. It documents the access-related value reported for this object or membership.- Enables: describe the provider-reported sharing policy attached to each board policy record.
- Interpretation: The provider supplies
sharingPolicyat board policy granularity. It describes provider-reported context and does not prove effective access beyond the returned record.
Access
Access
boards.policy.sharingPolicy.accessAccess states defines the public-level access for the board. It documents the access-related value reported for this object or membership.- Enables: describe the provider-reported access attached to each sharing policy record.
- Interpretation: The provider supplies
accessat sharing policy granularity. It describes provider-reported context and does not prove effective access beyond the returned record.
Account Access
Account Access
boards.policy.sharingPolicy.accountAccessAccount Access states defines the organization/account-level access for the board. It documents the access-related value reported for this object or membership.- Enables: describe the provider-reported account access attached to each sharing policy record.
- Interpretation: The provider supplies
accountAccessat sharing policy granularity. It describes provider-reported context and does not prove effective access beyond the returned record.
Invite To Account And Board Link Access
Invite To Account And Board Link Access
boards.policy.sharingPolicy.inviteToAccountAndBoardLinkAccessInvite To Account And Board Link Access states controls whether board link invitations also grant account access. It documents the access-related value reported for this object or membership.- Enables: describe the provider-reported invite to account and board link access attached to each sharing policy record.
- Interpretation: The provider supplies
inviteToAccountAndBoardLinkAccessat sharing policy granularity. It describes provider-reported context and does not prove effective access beyond the returned record.
Team Access
Team Access
boards.policy.sharingPolicy.teamAccessTeam Access states defines the team-level access for the board. It documents the access-related value reported for this object or membership.- Enables: describe the provider-reported team access attached to each sharing policy record.
- Interpretation: The provider supplies
teamAccessat sharing policy granularity. It describes provider-reported context and does not prove effective access beyond the returned record.
Project
Project
boards.projectProject records project information associated with the board, if any. It preserves the containing or referenced object needed to reconstruct the provider relationship.- Enables: associate each board record with the specific provider container named by project.
- Interpretation: The provider returns
projectas a nested object or reference onBoard; an absent value does not prove that no related object exists outside the credential’s visibility.
ID
ID
boards.project.idID is the unique identifier of the project. It is needed to resolve references that repeat the same provider identifier.- Enables: match board records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
- Interpretation: The provider supplies
idas a record-level identifier onProjectInfo. It is not a uniqueness guarantee unless a connector directive says so.
Name
Name
boards.project.nameName records display name of the project. It keeps the exact text, label, or authored value needed to interpret the record.- Enables: inspect the exact name value attached to each project info record.
- Interpretation: The provider supplies
nameat project info granularity in the format stated by its description; omitted or redacted content remains unknown.
Type
Type
boards.project.typeType states type of the resource, typically ‘project’. It preserves the provider’s current classification of this record.- Enables: separate board records by the exact provider-reported type value when describing their recorded state.
- Interpretation: The provider supplies
typeper project info record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, type is the work record’s classification, not an individual-performance measure.
Team
Team
boards.teamTeam records team information associated with the board. It preserves the containing or referenced object needed to reconstruct the provider relationship.- Enables: associate each board record with the specific provider container named by team.
- Interpretation: The provider returns
teamas a nested object or reference onBoard; an absent value does not prove that no related object exists outside the credential’s visibility.
ID
ID
boards.team.idID is the unique identifier of the team. It is needed to resolve references that repeat the same provider identifier.- Enables: match board records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
- Interpretation: The provider supplies
idas a record-level identifier onTeamInfo. It is not a uniqueness guarantee unless a connector directive says so.
Name
Name
boards.team.nameName records display name of the team. It keeps the exact text, label, or authored value needed to interpret the record.- Enables: inspect the exact name value attached to each team info record.
- Interpretation: The provider supplies
nameat team info granularity in the format stated by its description; omitted or redacted content remains unknown.
Type
Type
boards.team.typeType states type of the resource, typically ‘team’. It preserves the provider’s current classification of this record.- Enables: separate board records by the exact provider-reported type value when describing their recorded state.
- Interpretation: The provider supplies
typeper team info record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, type is the work record’s classification, not an individual-performance measure.
Type
Type
boards.typeType states type of the resource. Always ‘board’ for board objects. It preserves the provider’s current classification of this record.- Enables: separate board records by the exact provider-reported type value when describing their recorded state.
- Interpretation: The provider supplies
typeper board record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, type is the work record’s classification, not an individual-performance measure.
View Link
View Link
boards.viewLinkView Link records URL to view the board in the Miro web application. It retains the exact provider location for the referenced resource.- Enables: open or trace the exact provider resource referenced by view link on a board record.
- Interpretation: The provider supplies
viewLinkas a URL or resource locator on each board record. Availability still follows the provider’s permissions and retention.
Organization Members
Organization Members
organization_membersOrganization Members contain all members of a Miro organization (Enterprise plan only). Requires org_id ingestion config field. Provides user records with roles and activity data.- Enables: enumerate Enterprise organization members and their provider-reported roles.
- Scope: Reads the declared collection through
GET /{apiVersion}/orgs/{org_id}/membersas a full snapshot. The operation is Enterprise-only and is limited to the configured organization and token scopes.
Active
Active
organization_members.activeActive indicates whether the member is currently active. It preserves the provider-reported yes-or-no condition for this record.- Enables: select organization member records for which the provider reports active as true or false.
- Interpretation: The provider supplies
activeas a boolean per organization member record; false and missing are distinct when the field is optional. In Miro, active is a condition on the work record, not an individual-performance measure.
Company
Company
organization_members.companyCompany records company name associated with the member’s profile. It keeps the exact text, label, or authored value needed to interpret the record.- Enables: inspect the exact company value attached to each organization member record.
- Interpretation: The provider supplies
companyat organization member granularity in the format stated by its description; omitted or redacted content remains unknown.
Created At
Created At
organization_members.createdAtCreated At records ISO 8601 timestamp when the member was added. It anchors the named event or boundary on the record’s timeline.- Enables: place organization member records on a timeline by created at and select the records within an explicit reporting window.
- Interpretation: The provider supplies
createdAtper organization member record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
Email
organization_members.emailEmail records email address of the member. It keeps the provider-reported person or account context attached to the record.- Enables: attribute the organization member record to the provider-reported person or account represented by email.
- Interpretation: The provider supplies
emailas identity or attribution context on each organization member record. In Miro, email is attribution or membership context for the work record, not a measure of an individual’s performance.
ID
ID
organization_members.idID is the unique identifier of the organization member. It supplies the declared record identity used when repeated ingestions represent the same source row.- Enables: recognize repeated ingestions of the same organization member source row before constructing its represented state.
- Interpretation: The provider supplies
idat one value per organization member record, andx-transformDedupKeyexplicitly marks it as the record key.
Industry
Industry
organization_members.industryIndustry states industry associated with the member’s profile. It preserves the provider’s current classification of this record.- Enables: separate organization member records by the exact provider-reported industry value when describing their recorded state.
- Interpretation: The provider supplies
industryper organization member record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, industry is the work record’s classification, not an individual-performance measure.
Last Activity At
Last Activity At
organization_members.lastActivityAtLast Activity At records ISO 8601 timestamp of the member’s last activity. It anchors the named event or boundary on the record’s timeline.- Enables: place organization member records on a timeline by last activity at and select the records within an explicit reporting window.
- Interpretation: The provider supplies
lastActivityAtper organization member record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
Last Login At
Last Login At
organization_members.lastLoginAtLast Login At records ISO 8601 timestamp of the member’s last login. It anchors the named event or boundary on the record’s timeline.- Enables: place organization member records on a timeline by last login at and select the records within an explicit reporting window.
- Interpretation: The provider supplies
lastLoginAtper organization member record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
License
License
organization_members.licenseLicense captures the license type assigned to this member. It preserves the provider’s current classification of this record.- Enables: separate organization member records by the exact provider-reported license value when describing their recorded state.
- Interpretation: The provider supplies
licenseper organization member record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, license is the work record’s classification, not an individual-performance measure.
Modified At
Modified At
organization_members.modifiedAtModified At records ISO 8601 timestamp when the member record was last modified. It anchors the named event or boundary on the record’s timeline.- Enables: place organization member records on a timeline by modified at and select the records within an explicit reporting window.
- Interpretation: The provider supplies
modifiedAtper organization member record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
Name
Name
organization_members.nameName records full name of the member. It keeps the provider-reported person or account context attached to the record.- Enables: attribute the organization member record to the provider-reported person or account represented by name.
- Interpretation: The provider supplies
nameas identity or attribution context on each organization member record. In Miro, name is attribution or membership context for the work record, not a measure of an individual’s performance.
Role
Role
organization_members.roleRole states role of the member in the organization. It documents the access-related value reported for this object or membership.- Enables: describe the provider-reported role attached to each organization member record.
- Interpretation: The provider supplies
roleat organization member granularity. It describes provider-reported context and does not prove effective access beyond the returned record. In Miro, role is access or membership context, not an individual-performance measure.
State
State
organization_members.stateState states current state of the member account. It preserves the provider’s current classification of this record.- Enables: separate organization member records by the exact provider-reported state value when describing their recorded state.
- Interpretation: The provider supplies
stateper organization member record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, state is the work record’s classification, not an individual-performance measure.
Type
Type
organization_members.typeType states type of the resource. It preserves the provider’s current classification of this record.- Enables: separate organization member records by the exact provider-reported type value when describing their recorded state.
- Interpretation: The provider supplies
typeper organization member record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, type is the work record’s classification, not an individual-performance measure.
Organization Teams
Organization Teams
organization_teamsOrganization Teams contain all teams within a Miro organization (Enterprise plan only). Requires org_id ingestion config field.- Enables: map the teams configured within a Miro Enterprise organization.
- Scope: Reads the declared collection through
GET /{apiVersion}/orgs/{org_id}/teamsas a full snapshot. The operation is Enterprise-only and is limited to the configured organization and token scopes.
ID
ID
organization_teams.idID is the unique identifier of the team. It supplies the declared record identity used when repeated ingestions represent the same source row.- Enables: recognize repeated ingestions of the same organization team source row before constructing its represented state.
- Interpretation: The provider supplies
idat one value per organization team record, andx-transformDedupKeyexplicitly marks it as the record key.
Name
Name
organization_teams.nameName records name of the team. It keeps the exact text, label, or authored value needed to interpret the record.- Enables: inspect the exact name value attached to each organization team record.
- Interpretation: The provider supplies
nameat organization team granularity in the format stated by its description; omitted or redacted content remains unknown.
Picture
Picture
organization_teams.picturePicture records optional picture metadata for the team. It preserves the containing or referenced object needed to reconstruct the provider relationship.- Enables: associate each organization team record with the specific provider container named by picture.
- Interpretation: The provider returns
pictureas a nested object or reference onOrganizationTeam; an absent value does not prove that no related object exists outside the credential’s visibility.
ID
ID
organization_teams.picture.idID is the identifier for the picture resource. It is needed to resolve references that repeat the same provider identifier.- Enables: match organization team records to provider records that carry the same ID, without assuming that this field alone makes every row unique.
- Interpretation: The provider supplies
idas a record-level identifier onOrganizationTeamPicture. It is not a uniqueness guarantee unless a connector directive says so.
Image URL
Image URL
organization_teams.picture.imageURLImage URL records URL of the team picture image. It retains the exact provider location for the referenced resource.- Enables: open or trace the exact provider resource referenced by image URL on a organization team picture record.
- Interpretation: The provider supplies
imageURLas a URL or resource locator on each organization team picture record. Availability still follows the provider’s permissions and retention.
Type
Type
organization_teams.picture.typeType states type of the picture resource. It preserves the provider’s current classification of this record.- Enables: separate organization team records by the exact provider-reported type value when describing their recorded state.
- Interpretation: The provider supplies
typeper organization team picture record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, type is the work record’s classification, not an individual-performance measure.
Type
Type
organization_teams.typeType states type of the resource. It preserves the provider’s current classification of this record.- Enables: separate organization team records by the exact provider-reported type value when describing their recorded state.
- Interpretation: The provider supplies
typeper organization team record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, type is the work record’s classification, not an individual-performance measure.
Team Members
Team Members
team_membersTeam Members contain all members of a specific team within a Miro organization (Enterprise plan only). Requires org_id ingestion config field and team_id from parent organization_teams tap.- Enables: map members to each Enterprise organization team.
- Scope: Reads the declared collection through
GET /{apiVersion}/orgs/{org_id}/teams/{team_id}/membersas a full snapshot. The operation is Enterprise-only and is limited to the configured organization and token scopes.
Active
Active
team_members.activeActive indicates whether the team member account is currently active. It preserves the provider-reported yes-or-no condition for this record.- Enables: select team member records for which the provider reports active as true or false.
- Interpretation: The provider supplies
activeas a boolean per team member record; false and missing are distinct when the field is optional. In Miro, active is a condition on the work record, not an individual-performance measure.
Company
Company
team_members.companyCompany records company name associated with the team member. It keeps the exact text, label, or authored value needed to interpret the record.- Enables: inspect the exact company value attached to each team member record.
- Interpretation: The provider supplies
companyat team member granularity in the format stated by its description; omitted or redacted content remains unknown.
Created At
Created At
team_members.createdAtCreated At records the timestamp indicating when the team member was added to the team. It anchors the named event or boundary on the record’s timeline.- Enables: place team member records on a timeline by created at and select the records within an explicit reporting window.
- Interpretation: The provider supplies
createdAtper team member record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
Email
team_members.emailEmail records email address of the team member. It keeps the provider-reported person or account context attached to the record.- Enables: attribute the team member record to the provider-reported person or account represented by email.
- Interpretation: The provider supplies
emailas identity or attribution context on each team member record. In Miro, email is attribution or membership context for the work record, not a measure of an individual’s performance.
ID
ID
team_members.idID is the unique identifier of the team member. It supplies the declared record identity used when repeated ingestions represent the same source row.- Enables: recognize repeated ingestions of the same team member source row before constructing its represented state.
- Interpretation: The provider supplies
idat one value per team member record, andx-transformDedupKeyexplicitly marks it as the record key.
Industry
Industry
team_members.industryIndustry states industry associated with the team member’s profile. It preserves the provider’s current classification of this record.- Enables: separate team member records by the exact provider-reported industry value when describing their recorded state.
- Interpretation: The provider supplies
industryper team member record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, industry is the work record’s classification, not an individual-performance measure.
Last Activity At
Last Activity At
team_members.lastActivityAtLast Activity At records the timestamp of the member’s last activity within the team. It anchors the named event or boundary on the record’s timeline.- Enables: place team member records on a timeline by last activity at and select the records within an explicit reporting window.
- Interpretation: The provider supplies
lastActivityAtper team member record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
Modified At
Modified At
team_members.modifiedAtModified At records the timestamp indicating when the team member record was last modified. It anchors the named event or boundary on the record’s timeline.- Enables: place team member records on a timeline by modified at and select the records within an explicit reporting window.
- Interpretation: The provider supplies
modifiedAtper team member record as a timestamp at the precision returned by the provider; missing values mean the event or boundary was not reported.
Name
Name
team_members.nameName records full name of the team member. It keeps the provider-reported person or account context attached to the record.- Enables: attribute the team member record to the provider-reported person or account represented by name.
- Interpretation: The provider supplies
nameas identity or attribution context on each team member record. In Miro, name is attribution or membership context for the work record, not a measure of an individual’s performance.
Role
Role
team_members.roleRole states role of the member within the team. It documents the access-related value reported for this object or membership.- Enables: describe the provider-reported role attached to each team member record.
- Interpretation: The provider supplies
roleat team member granularity. It describes provider-reported context and does not prove effective access beyond the returned record. In Miro, role is access or membership context, not an individual-performance measure.
Team ID
Team ID
team_members.team_idTeam ID identifies parent id injected by the ingestor from the organization_teams to team_members traversal parentContextFields. Not part of the upstream API response; written into each row at bronze ingestion time. It is needed to resolve references that repeat the same provider identifier.- Enables: match team member records to provider records that carry the same team ID, without assuming that this field alone makes every row unique.
- Interpretation: The provider supplies
team_idas a record-level identifier onTeamMember. It is not a uniqueness guarantee unless a connector directive says so.
Type
Type
team_members.typeType states type of the resource. It preserves the provider’s current classification of this record.- Enables: separate team member records by the exact provider-reported type value when describing their recorded state.
- Interpretation: The provider supplies
typeper team member record using its own state vocabulary; unknown and missing values must remain distinct. In Miro, type is the work record’s classification, not an individual-performance measure.
- Confirm you selected the non-expiring token option when creating the Miro app. Tokens from apps configured with expiring tokens will show as invalid after 1 hour.
- Verify
boards:readandidentity:readare enabled in your app permissions. - Ensure you copied the Access token (not the Client ID or Client Secret).
- Confirm your Miro account is on an Enterprise plan.
- Confirm you provided the correct Organization ID in the Provider configuration. Find it in Miro under Settings > Company Settings > Security > Audit log.
- Confirm
auditlogs:read,organizations:read, andorganizations:teams:readscopes are enabled on the app.
- The token’s access is scoped to the workspace team it was created in. If boards belong to a different team, the token will not return them.