All docs

Meetings

List and retrieve meetings — including attendees, transcript, and AI analysis — from the graph8 inbox

The Meetings API lets you query scheduled, past, and upcoming meetings stored in the graph8 inbox, including attendees, transcript status, AI-generated summaries, and linked CRM data.


List Meetings

GET /inbox/meetings

Returns a paginated list of meetings. All query parameters are optional and can be combined.

Query Parameters

ParameterTypeDefaultDescription
participant_emailstring (repeatable)Match meetings where the organizer, owner, or any attendee has this email. Repeat the parameter to match any of multiple emails (OR logic).
scopestringmy — only meetings belonging to the authenticated user; all — all meetings in the org.
timeframestringall | upcoming | past
has_transcriptbooleanWhen true, return only meetings that have a linked transcript.
internal_modestringinclude_internal — include internal-only meetings; exclude_internal — omit them.
searchstringFull-text match against meeting title or transcript content.
pageinteger1Page number (1-indexed).
page_sizeinteger50Items per page (max 100).

Example

cURL

# List upcoming meetings for the authenticated user
curl "https://be.graph8.com/api/v1/inbox/meetings?scope=my&timeframe=upcoming" \
  -H "Authorization: Bearer $API_KEY"

# Filter by participant email and transcript presence
curl "https://be.graph8.com/api/v1/inbox/[email protected]&has_transcript=true&page=1&page_size=25" \
  -H "Authorization: Bearer $API_KEY"

# Search transcript content (exclude internal meetings)
curl "https://be.graph8.com/api/v1/inbox/meetings?search=pricing&internal_mode=exclude_internal" \
  -H "Authorization: Bearer $API_KEY"

Response

{
  "data": [
    {
      "id": "meeting_uuid",
      "channel": "meetings",
      "subject": "...",
      "organizer_email": "...",
      "user_email": "...",
      "start_time": "...",
      "end_time": "...",
      "meeting_url": "...",
      "attendees": [
        {
          "email": "...",
          "name": "...",
          "response_status": "accepted",
          "organizer": false
        }
      ],
      "transcript_status": "linked",
      "transcript_id": "...",
      "transcript_source": "fathom",
      "transcript_summary": "...",
      "transcript_redacted": false,
      "audience_type": "prospect",
      "is_internal_only": false,
      "meeting_sensitivity": null,
      "matched_account": {},
      "tags": [{}],
      "assignees": [{}],
      "preview": "...",
      "created_at": "...",
      "updated_at": "..."
    }
  ],
  "pagination": {}
}

Response Fields

FieldTypeDescription
idstringUnique meeting UUID.
channelstringAlways "meetings".
subjectstringMeeting title.
organizer_emailstringEmail of the calendar organizer.
user_emailstringEmail of the graph8 user who owns this meeting record.
start_timestringISO 8601 start timestamp.
end_timestringISO 8601 end timestamp.
meeting_urlstringConferencing join URL.
attendeesarrayList of attendee objects (see below).
transcript_statusstringTranscript link state — e.g. "linked", "none", "processing".
transcript_idstringID of the linked transcript record, if any.
transcript_sourcestringProvider that generated the transcript — e.g. "fathom".
transcript_summarystringAI-generated summary of the transcript.
transcript_redactedbooleanWhether the transcript has been redacted.
audience_typestringClassification of attendees — e.g. "prospect".
is_internal_onlybooleantrue if all attendees are internal (same org domain).
meeting_sensitivitystring | nullSensitivity label, if set.
matched_accountobjectCRM account matched to this meeting, if any.
tagsarrayTags attached to this meeting.
assigneesarrayTeam members assigned to this meeting.
previewstringShort text preview of the meeting content.
created_atstringISO 8601 record creation timestamp.
updated_atstringISO 8601 record last-updated timestamp.

Attendee Object

FieldTypeDescription
emailstringAttendee email address.
namestringAttendee display name.
response_statusstringCalendar response — e.g. "accepted", "declined", "tentative".
organizerbooleantrue if this attendee is the meeting organizer.

Get Meeting

GET /inbox/meetings/{meeting_id}

Returns full detail for a single meeting, including the full transcript text and AI analysis fields that are not returned in the list endpoint.

Path Parameters

ParameterTypeDescription
meeting_idstringMeeting UUID.

Example

cURL

curl "https://be.graph8.com/api/v1/inbox/meetings/meeting_uuid" \
  -H "Authorization: Bearer $API_KEY"

Response

All fields from the list endpoint are present, plus the following additional fields:

FieldTypeDescription
transcript_textstringFull transcript body text.
key_topicsarrayAI-extracted key topics discussed in the meeting.
action_itemsarrayAI-extracted action items from the meeting.
meeting_tasksarrayTasks created from this meeting.
campaign_mentionsarrayCampaigns or sequences mentioned during the meeting.
custom_fieldsobjectCustom field values attached to this meeting record.
participant_linksarrayCRM links resolved for each participant (contact/company records).
owner_team_memberobjectgraph8 team member who owns this meeting record.
organizer_team_memberobjectgraph8 team member who is the calendar organizer.
Build with graph8