I'mBoardDocs
Resources

Meetings

Board meeting scheduling, location, and lifecycle management.

A meeting represents a board meeting with scheduling, location, and lifecycle details. Meetings are scoped to a specific board.

Endpoints

MethodPathDescription
GET/api/v1/boards/:boardId/meetingsList meetings
GET/api/v1/boards/:boardId/meetings/:meetingIdGet a meeting
POST/api/v1/boards/:boardId/meetingsCreate a meeting
PATCH/api/v1/boards/:boardId/meetings/:meetingIdUpdate a meeting

Meeting Object

{
  "object": "meeting",
  "id": "60d5ec49f1a2c8b1f8e4e1b1",
  "boardId": "60d5ec49f1a2c8b1f8e4e1a1",
  "title": "Q2 Board Review",
  "status": "scheduled",
  "locationType": "virtual",
  "location": null,
  "virtualMeetingUrl": "https://zoom.us/j/123456789",
  "startTime": "2025-07-15T14:00:00.000Z",
  "endTime": "2025-07-15T16:00:00.000Z",
  "createdByUserId": "507f1f77bcf86cd799439011",
  "createdAt": "2025-06-01T10:00:00.000Z",
  "updatedAt": "2025-06-10T09:30:00.000Z"
}

Fields

FieldTypeDescription
object"meeting"Always "meeting"
idstringOpaque meeting ID
boardIdstringThe board this meeting belongs to
titlestringMeeting title
statusstringLifecycle status: draft, scheduled, in_progress, completed. A draft is private to its creator — see Draft privacy
locationTypestring | nullvirtual, in_person, or hybrid
locationstring | nullPhysical location address
virtualMeetingUrlstring | nullURL for the virtual meeting
startTimestring | nullScheduled start time (ISO-8601)
endTimestring | nullScheduled end time (ISO-8601)
createdByUserIdstringID of the user who created the meeting
createdAtstringISO-8601 timestamp
updatedAtstringISO-8601 timestamp

List Meetings

GET /api/v1/boards/:boardId/meetings

Supports filtering by status, startAfter, and startBefore. See Pagination, Filtering & Sorting.

Other members' draft meetings are omitted — see Draft privacy.

Example

curl -s "https://app.imboard.ai/api/v1/boards/BOARD_ID/meetings?status=scheduled&order=asc" \
  -H "Authorization: Bearer imb_pat_YOUR_TOKEN" | jq

Get a Meeting

GET /api/v1/boards/:boardId/meetings/:meetingId

A draft meeting is private to its creator; any other caller receives 404.

Create a Meeting

See Create & Update Meeting guide.

Update a Meeting

See Create & Update Meeting guide.

A draft meeting can only be updated by its creator; any other caller receives 404 and the meeting is left unchanged.

Draft privacy

A meeting with status draft is private to the member who created it — the status means "Private draft - only visible to you", and the API enforces that:

  • List omits other members' drafts, so status=draft returns only your own.
  • GET and PATCH of another member's draft return 404, as do that meeting's slot and action-item routes. The API does not confirm that a draft you cannot see exists.
  • Only the creator can move a meeting into draft; another member attempting it gets 403.
  • A board access token has no user identity, so it sees no drafts at all.

Every other status is visible to all board members.

On this page