---
title: "Get today's appointments"
method: GET
path: "/v4/appointment/today"
tags: ["Appointment V4"]
---

# Get today's appointments

`GET /v4/appointment/today`

## Request

- Base URL: `https://developer.meetergo.com` (the document declares no server; this is the origin it was published from)
- URL: `https://developer.meetergo.com/v4/appointment/today`
- Auth: one of:
  - API key in header `x-meetergo-api-user-id`
  - HTTP bearer
  - HTTP bearer

Retrieves all appointments scheduled for today for the authenticated user

## Query parameters

- `timezone` string, required

## Response `200`

Today's appointments retrieved successfully

- AppointmentResponseDto[]
  - `id` string, required: Appointment ID
  - `secret` string, required: Secret key for appointment authentication
  - `ics` string, required: ICS calendar data
  - `meetingInfo` MeetingInfo, required
    - `name` string, required: Name of the meeting type
    - `description` string, required: Description of the meeting type
    - `nameLocalised` LocalisedContent
      - `en` string, required
      - `de` string
      - `fr` string
      - `es` string
      - `no` string
      - `it` string
      - `nl` string
      - `da` string
      - `pl` string
      - `se` string
      - `tr` string
    - `descriptionLocalised` LocalisedContent
      - `en` string, required
      - `de` string
      - `fr` string
      - `es` string
      - `no` string
      - `it` string
      - `nl` string
      - `da` string
      - `pl` string
      - `se` string
      - `tr` string
    - `enableRedirect` boolean, required: Enable redirect after booking completion
    - `redirect` string, required: Redirect URL to navigate after booking
    - `passEventDetailsToRedirect` boolean, required: Pass event details (invitee name, email, form answers) as query params to redirect URL
    - `duration` number, required: Primary duration in minutes
    - `channel` 'local' | 'local-attendee' | 'google' | 'zoom' | 'phone' | 'phone-incoming' | 'whatsapp' | 'connect' | 'webex' | 'skypeForConsumer' | 'skypeForBusiness' | 'teamsForBusiness' | 'teamsForBusiness2' | 'teamsForExchange' | 'teams2ForExchange' | 'custom' | 'resource' | 'whereby' | 'kmeet' | 'zava' | 'jitsi' | 'nextcloudTalk' | 'openTalk' | 'alfaview', required: Meeting channel/location type
    - `customChannelName` string, required: Custom name for the meeting channel
    - `customChannelLink` string, required: Custom link for the meeting channel
    - `connectChannelName` string, required: Custom display name for the connect channel
    - `groupBooking` boolean, required: Enable group booking (multiple attendees per slot)
    - `showAvailableSlots` boolean, required: Show available spots count on the booking page
    - `enrichInvitee` boolean, required: Enable invitee data enrichment
    - `autoCreateSpace` boolean, required: Auto-create a Space when someone books
    - `spacePresetId` object, nullable: Space preset id used for the auto-created Space
    - `spaceAutoInvite` boolean, required: Publish the auto-created Space and invite the booker
    - `confirmationButton` ConfirmationButton, required
      - `useConfirmationButton` boolean, required
      - `text` string, required
      - `color` string, required
      - `link` string, required
    - `bufferBefore` number, required: Buffer time before meeting in minutes
    - `bufferAfter` number, required: Buffer time after meeting in minutes
    - `bufferMustStayWithinWorkingHours` boolean, required: Only offer slots where buffer fits within working hours (no spillover into breaks or after-hours)
    - `rollingSlots` boolean, required: Restart the slot grid after each appointment instead of keeping a fixed grid per working block
    - `color` object, nullable: Color for the meeting type in RGB format, e.g. "rgb(0, 153, 255)"
  - `hostingInfo` HostingInfoResponseDto, required
    - `mainHost` string, nullable: Main host user ID
    - `meetingLink` string, nullable: Meeting link for the appointment
    - `googleEventId` string, nullable: Google Calendar event ID
    - `googleConnectionSub` string, nullable: Google connection subject
    - `calendarConnectionId` string: Calendar connection ID for external calendars
    - `zoomMeetingId` number, nullable: Zoom meeting ID
    - `connectChannelId` string: Connect channel ID for external integrations
    - `wherebyMeetingId` string, nullable: Whereby meeting ID
    - `alfaviewMeetingId` string, nullable: alfaview meeting ID
    - `alfaviewModeratorLink` string, nullable: alfaview join URL with moderator permissions, for the host only
    - `calendarSyncProviders` AppointmentCalendarSync
      - `id` string, required: Calendar connection id
      - `type` string, required: Calendar connection type. Google, Outlook, etc.
      - `hostId` string, required: User id of the host
      - `eventId` string, required: Id of the external event that is created on the calendar.
      - `calendarId` string, required: Id of the external calendar on which the event is created.
  - `cancel` BookingActionInfoResponseDto, required
    - `actionAt` string: Timestamp when the action occurred
    - `actionBy` string, nullable: User ID who performed the action
    - `actionSource` 'attendee' | 'company' | 'host', required
    - `reason` string: Reason for the action (e.g., cancellation reason)
  - `crmOptions` MeetingCRMOptions, required
    - `hubspotContactSync` boolean, required
    - `hubspotContactStage` string, required
    - `hubspotCompanySync` boolean, required
    - `hubspotCompanyStage` string, required
    - `hubspotCompanyMatchingField` string, required
    - `hubspotDealSync` boolean, required
    - `hubspotDealStage` string, required
    - `hubspotPipelineId` string, required
    - `pipedriveDealSync` boolean, required
    - `pipedriveContactSync` boolean, required
    - `pipedrivePipelineId` number, nullable, required
    - `pipedriveStageId` number, nullable, required
    - `pipedriveUseExistingDeal` boolean, required
    - `closeDealSync` boolean, required
    - `closeContactSync` boolean, required
    - `closePipelineId` object, nullable, required
    - `closeStatusId` object, nullable, required
    - `closeUseExistingDeal` boolean, required
    - `centralStationContactSync` boolean, required
    - `centralStationDealSync` boolean, required
    - `centralStationPipelineId` number, nullable, required
    - `centralStationStageId` number, nullable, required
    - `linkandoSyncEnabled` boolean, required
    - `linkandoPlaybookId` number, nullable, required
    - `linkandoTemplateId` number, nullable, required
    - `evalancheEnabled` boolean, required
    - `klicktippEnabled` boolean, required
    - `getResponseEnabled` boolean, required
    - `getResponseCampaignId` string, nullable, required
    - `brevoEnabled` boolean, required
    - `sevdeskEnabled` boolean, required
    - `sevdeskCategoryId` number, nullable, required
    - `lexwareEnabled` boolean, required
    - `professionalWorksEnabled` boolean, required
    - `abAgentaEnabled` boolean, required
    - `smartWeContactSync` boolean, required
    - `smartWeCompanySync` boolean, required
    - `smartWeDealSync` boolean, required
    - `smartWeDealStage` string, required
    - `salesforceSyncEnabled` boolean, required
    - `salesforceCaseSync` boolean, required
    - `salesforceLeadSync` boolean, required
    - `salesforceOpportunitySync` boolean, required
    - `salesforceLeadStatus` string, required
    - `salesforceCaseStatus` string, required
    - `salesforceOpportunityStage` string, required
    - `salesforceDefaultObjectType` string, required
    - `internalCrmPipelineId` object, nullable, required
    - `internalCrmStageId` object, nullable, required
    - `crmOptInFieldName` object, nullable, required
  - `start` string, required: Appointment start time (ISO string)
  - `end` string, required: Appointment end time (ISO string)
  - `isCancelled` boolean, required: Whether the appointment is cancelled
  - `rescheduledAt` string: When the appointment was rescheduled
  - `rescheduledBy` string, nullable: Email address of the attendee, host, or operator who last rescheduled the appointment
  - `location` string: Meeting location
  - `attendees` AttendeeBasicDto[], required: Appointment attendees without relation properties
    - `id` string, required: Attendee ID
    - `secret` string, required: Attendee secret for authentication
    - `email` string: Attendee email address
    - `fullname` string: Attendee full name
    - `firstname` string: Attendee first name
    - `lastname` string: Attendee last name
    - `bringalongEmails` string[], required: Additional attendee emails (bring-along)
    - `notes` object, required: Attendee notes as key-value pairs
    - `receiveReminders` boolean, required: Whether attendee receives reminders
    - `phone` string: Attendee phone number
    - `language` string, required: Attendee preferred language
    - `timezone` string, required: Attendee timezone
    - `noShow` boolean, required: Whether attendee was a no-show
    - `noShowAt` string, date-time, nullable
    - `dataPolicyAccepted` boolean, required: Whether data policy was accepted
    - `doubleOptIn` string: Double opt-in confirmation timestamp
    - `createdAt` string, required: Creation timestamp
    - `updatedAt` string, required: Last update timestamp
    - `deletedAt` string: Soft deletion timestamp
    - `billingDetails` AttendeeBillingDetails
      - `company` string
      - `addressLine1` string
      - `addressLine2` string
      - `postalCode` string
      - `city` string
      - `countryCode` string: ISO 3166-1 alpha-2
      - `vatId` string: USt-IdNr.
  - `attendeeIds` string[], required: Array of attendee IDs
  - `roundRobinEntries` RoundRobinEntryDto[], required: Round robin entries for this appointment
    - `id` number, required
    - `userId` string, nullable
    - `groupId` string, nullable
    - `appointmentId` string, nullable
    - `queueId` string
    - `createdAt` string, required
    - `selectionReason` string
  - `meetingTypeId` string, required: Meeting type ID
  - `hostIds` string[], required: Array of host user IDs
  - `scheduledReminderIds` string[], required: Array of scheduled reminder IDs
  - `companyId` string, required: Company ID this appointment belongs to
  - `createdAt` string, required: Creation timestamp
  - `updatedAt` string, required: Last update timestamp
  - `deletedAt` string: Soft deletion timestamp
  - `resolvableErrors` ResolvableErrorBasicDto[], required: Appointment resolvable errors (error codes only)
    - `errorCode` string, required: Error code identifying the type of error
  - `paymentId` string: Payment ID if this is a paid appointment
  - `note` string: Appointment note
  - `transcription` string, nullable: Full meeting transcription in markdown format
  - `summary` string, nullable: AI-generated summary of the meeting in markdown format

## Other responses

- `400`: The request did not validate. `message` lists the constraints that failed.
- `401`: Missing, malformed, or expired credentials.
- `403`: Authenticated, but not allowed: the plan does not include this feature, or the token is scoped away from it.
- `429`: Rate limited. Back off and retry.

---

[API](https://skmtc.dev/meetergo/apis/meetergo-platform-api.md) · [All operations](https://skmtc.dev/meetergo/apis/meetergo-platform-api/llms.txt) · [OpenAPI document](https://skmtc.dev/meetergo/apis/meetergo-platform-api/revisions/b5d66cd8be67?raw)
