← Schema Reference

Queries

Read operations on POST /graphql/ — 31 in all. Each shows its arguments, return type, and an example request.
Returns availability windows.
Arguments
  • calendarId:Int!
  • endDatetime:DateTime!
  • startDatetime:DateTime!
Example
query AvailabilityWindows {
  availabilityWindows(
    calendarId: 10
    endDatetime: "2025-01-01T00:00:00Z"
    startDatetime: "2025-01-01T00:00:00Z"
  ) {
    canBookPartially
    endTime
    id
    startTime
  }
}
availabilityWindowsWithCode
Returns availability windows with code.
Arguments
  • code:String!
  • endDatetime:DateTime!
  • startDatetime:DateTime!
Example
query AvailabilityWindowsWithCode {
  availabilityWindowsWithCode(
    code: "<code>"
    endDatetime: "2025-01-01T00:00:00Z"
    startDatetime: "2025-01-01T00:00:00Z"
  ) {
    canBookPartially
    endTime
    id
    startTime
  }
}
Returns available times.
Arguments
  • availableTimeId:Int= null
  • calendarId:Int= null
  • endDatetime:DateTime= null
  • startDatetime:DateTime= null
Example
query AvailableTimes {
  availableTimes {
    created
    endTime
    id
    modified
    startTime
    calendar {
      calendarType
      capacity
      created
      description
      email
      externalId
    }
    recurrenceExceptions {
      created
      exceptionDate
      id
      isCancelled
      modified
    }
    recurrenceRule {
      byHour
      byMinute
      byMonth
      byMonthDay
      bySecond
      byWeekday
    }
  }
}
availableTimesWithCode
Returns available times with code.
Arguments
  • code:String!
  • endDatetime:DateTime!
  • startDatetime:DateTime!
Example
query AvailableTimesWithCode {
  availableTimesWithCode(
    code: "<code>"
    endDatetime: "2025-01-01T00:00:00Z"
    startDatetime: "2025-01-01T00:00:00Z"
  ) {
    created
    endTime
    id
    modified
    startTime
    calendar {
      calendarType
      capacity
      created
      description
      email
      externalId
    }
    recurrenceExceptions {
      created
      exceptionDate
      id
      isCancelled
      modified
    }
    recurrenceRule {
      byHour
      byMinute
      byMonth
      byMonthDay
      bySecond
      byWeekday
    }
  }
}
Returns blocked times.
Arguments
  • blockedTimeId:Int= null
  • calendarId:Int= null
  • endDatetime:DateTime= null
  • startDatetime:DateTime= null
Example
query BlockedTimes {
  blockedTimes {
    created
    endTime
    externalId
    id
    modified
    startTime
    calendar {
      calendarType
      capacity
      created
      description
      email
      externalId
    }
    recurrenceExceptions {
      created
      exceptionDate
      id
      isCancelled
      modified
    }
  }
}
Returns booking policies.
Arguments
  • calendarGroupId:Int= null
  • calendarId:Int= null
  • isOrganizationDefault:Boolean= null
  • limit:Int!= 100
  • membershipUserId:Int= null
  • offset:Int!= 0
Example
query BookingPolicies {
  bookingPolicies(
    limit: 10
    offset: 10
  ) {
    bufferAfterSeconds
    bufferBeforeSeconds
    calendarGroupId
    calendarId
    created
    id
  }
}
brandingForTenant
Returns branding for tenant.
Arguments
  • tenantId:ID!
Example
query BrandingForTenant {
  brandingForTenant(tenantId: "<tenantId>") {
    appName
    logoUrl
    primaryColor
    secondaryColor
  }
}
calendarBookableSlots
Returns calendar bookable slots.
Arguments
  • calendarId:Int!
  • durationSeconds:Int!
  • searchWindowEnd:DateTime!
  • searchWindowStart:DateTime!
  • slotStepSeconds:Int!= 900
Example
query CalendarBookableSlots {
  calendarBookableSlots(
    calendarId: 10
    durationSeconds: 10
    searchWindowEnd: "2025-01-01T00:00:00Z"
    searchWindowStart: "2025-01-01T00:00:00Z"
    slotStepSeconds: 10
  ) {
    endTime
    startTime
  }
}
calendarBookableSlotsWithCode
Returns calendar bookable slots with code.
Arguments
  • code:String!
  • durationSeconds:Int!
  • searchWindowEnd:DateTime!
  • searchWindowStart:DateTime!
  • slotStepSeconds:Int!= 900
Example
query CalendarBookableSlotsWithCode {
  calendarBookableSlotsWithCode(
    code: "<code>"
    durationSeconds: 10
    searchWindowEnd: "2025-01-01T00:00:00Z"
    searchWindowStart: "2025-01-01T00:00:00Z"
    slotStepSeconds: 10
  ) {
    endTime
    startTime
  }
}
Returns calendar bundles.
Arguments
  • limit:Int!= 100
  • offset:Int!= 0
Example
query CalendarBundles {
  calendarBundles(
    limit: 10
    offset: 10
  ) {
    description
    id
    isPrivate
    name
    children {
      calendarType
      capacity
      created
      description
      email
      externalId
    }
    owners {
      id
      isDefault
    }
  }
}
Returns calendar events.
Arguments
  • calendarId:Int= null
  • endDatetime:DateTime= null
  • eventId:Int= null
  • startDatetime:DateTime= null
  • userId:Int= null
Example
query CalendarEvents {
  calendarEvents {
    created
    description
    durationSeconds
    endTime
    externalId
    id
    attendances {
      created
      id
      modified
      status
    }
    attendeeMemberships {
      organizationId
      role
      userId
    }
  }
}
calendarGroup
Returns calendar group.
Arguments
  • groupId:Int!
Example
query CalendarGroup {
  calendarGroup(groupId: 10) {
    created
    description
    id
    isPrivate
    modified
    name
    slots {
      created
      description
      id
      modified
      name
      order
    }
  }
}
Returns calendar group availability.
Arguments
Example
query CalendarGroupAvailability {
  calendarGroupAvailability(
    groupId: 10
    ranges: [{ endTime: "2025-01-01T00:00:00Z", startTime: "2025-01-01T00:00:00Z" }]
  ) {
    endTime
    startTime
    slots {
      availableCalendarIds
      isBookable
      requiredCount
      slotId
    }
  }
}
calendarGroupAvailabilityWithCode
Returns calendar group availability with code.
Arguments
Example
query CalendarGroupAvailabilityWithCode {
  calendarGroupAvailabilityWithCode(
    code: "<code>"
    ranges: [{ endTime: "2025-01-01T00:00:00Z", startTime: "2025-01-01T00:00:00Z" }]
  ) {
    endTime
    startTime
    slots {
      availableCalendarIds
      isBookable
      requiredCount
      slotId
    }
  }
}
calendarGroupBookableSlots
Returns calendar group bookable slots.
Arguments
  • durationSeconds:Int!
  • groupId:Int!
  • searchWindowEnd:DateTime!
  • searchWindowStart:DateTime!
  • slotStepSeconds:Int!= 900
Example
query CalendarGroupBookableSlots {
  calendarGroupBookableSlots(
    durationSeconds: 10
    groupId: 10
    searchWindowEnd: "2025-01-01T00:00:00Z"
    searchWindowStart: "2025-01-01T00:00:00Z"
    slotStepSeconds: 10
  ) {
    endTime
    startTime
  }
}
calendarGroupBookableSlotsWithCode
Returns calendar group bookable slots with code.
Arguments
  • code:String!
  • durationSeconds:Int!
  • searchWindowEnd:DateTime!
  • searchWindowStart:DateTime!
  • slotStepSeconds:Int!= 900
Example
query CalendarGroupBookableSlotsWithCode {
  calendarGroupBookableSlotsWithCode(
    code: "<code>"
    durationSeconds: 10
    searchWindowEnd: "2025-01-01T00:00:00Z"
    searchWindowStart: "2025-01-01T00:00:00Z"
    slotStepSeconds: 10
  ) {
    endTime
    startTime
  }
}
calendarGroupEvents
Returns calendar group events.
Arguments
  • endDatetime:DateTime!
  • groupId:Int!
  • startDatetime:DateTime!
Example
query CalendarGroupEvents {
  calendarGroupEvents(
    endDatetime: "2025-01-01T00:00:00Z"
    groupId: 10
    startDatetime: "2025-01-01T00:00:00Z"
  ) {
    created
    description
    durationSeconds
    endTime
    externalId
    id
    attendances {
      created
      id
      modified
      status
    }
    attendeeMemberships {
      organizationId
      role
      userId
    }
  }
}
Returns calendar groups.
Arguments
  • limit:Int!= 100
  • offset:Int!= 0
Example
query CalendarGroups {
  calendarGroups(
    limit: 10
    offset: 10
  ) {
    created
    description
    id
    isPrivate
    modified
    name
    slots {
      created
      description
      id
      modified
      name
      order
    }
  }
}
Returns calendars.
Arguments
  • calendarId:Int= null
  • calendarType:String= null
  • limit:Int!= 100
  • offset:Int!= 0
  • userId:Int= null
Example
query Calendars {
  calendars(
    limit: 10
    offset: 10
  ) {
    calendarType
    capacity
    created
    description
    email
    externalId
    owners {
      id
      isDefault
    }
  }
}
childOrganizations
Returns child organizations.
Arguments
  • limit:Int!= 100
  • offset:Int!= 0
Example
query ChildOrganizations {
  childOrganizations(
    limit: 10
    offset: 10
  ) {
    calendarCount
    calendarGroupCount
    createdAt
    eventCount
    id
    membershipCount
  }
}
eventIcs
String
Returns event ics.
Arguments
  • eventId:Int!
Example
query EventIcs {
  eventIcs(eventId: 10)
}
externalEventChangeRequests
Returns external event change requests.
Arguments
  • eventId:Int= null
  • limit:Int!= 100
  • offset:Int!= 0
  • status:String= null
Example
query ExternalEventChangeRequests {
  externalEventChangeRequests(
    limit: 10
    offset: 10
  ) {
    created
    eventId
    id
    kind
    modified
    proposedValues
    resolvedBy {
      organizationId
      role
      userId
    }
  }
}
Returns unavailable windows.
Arguments
  • calendarId:Int!
  • endDatetime:DateTime!
  • startDatetime:DateTime!
Example
query UnavailableWindows {
  unavailableWindows(
    calendarId: 10
    endDatetime: "2025-01-01T00:00:00Z"
    startDatetime: "2025-01-01T00:00:00Z"
  ) {
    endTime
    id
    reason
    startTime
  }
}
unavailableWindowsWithCode
Returns unavailable windows with code.
Arguments
  • code:String!
  • endDatetime:DateTime!
  • startDatetime:DateTime!
Example
query UnavailableWindowsWithCode {
  unavailableWindowsWithCode(
    code: "<code>"
    endDatetime: "2025-01-01T00:00:00Z"
    startDatetime: "2025-01-01T00:00:00Z"
  ) {
    endTime
    id
    reason
    startTime
  }
}
Returns users.
Arguments
  • email:String= null
  • limit:Int!= 100
  • name:String= null
  • offset:Int!= 0
  • userId:Int= null
Example
query Users {
  users(
    limit: 10
    offset: 10
  ) {
    created
    email
    id
    isActive
    isStaff
    modified
    profile {
      created
      firstName
      lastName
      modified
      profilePicture
    }
  }
}
validateReturnUrl
Returns validate return url.
Arguments
  • tenantId:ID!
  • url:String!
Example
query ValidateReturnUrl {
  validateReturnUrl(
    tenantId: "<tenantId>"
    url: "<url>"
  ) {
    allowed
    sanitizedUrl
  }
}
webhookConfigurations
Returns webhook configurations.
Arguments
  • limit:Int!= 100
  • offset:Int!= 0
Example
query WebhookConfigurations {
  webhookConfigurations(
    limit: 10
    offset: 10
  ) {
    created
    eventType
    headers
    id
    modified
    url
  }
}
webhookDeliveryEvents
Returns webhook delivery events.
Arguments
  • limit:Int!= 100
  • offset:Int!= 0
Example
query WebhookDeliveryEvents {
  webhookDeliveryEvents(
    limit: 10
    offset: 10
  ) {
    configurationId
    created
    eventType
    id
    modified
    responseStatus
  }
}
Returns webhook events.
Arguments
  • hoursBack:Int!= 24
  • limit:Int!= 50
  • processingStatus:String= null
  • subscriptionId:Int= null
Example
query WebhookEvents {
  webhookEvents(
    hoursBack: 10
    limit: 10
  ) {
    created
    errorMessage
    eventType
    externalCalendarId
    externalEventId
    id
    subscription {
      callbackUrl
      channelId
      created
      expiresAt
      externalResourceId
      externalSubscriptionId
    }
  }
}
Returns webhook health.
Example
query WebhookHealth {
  webhookHealth {
    activeSubscriptions
    expiredSubscriptions
    expiringSoonSubscriptions
    failedEventsCount
    recentEventsCount
    successRate
  }
}
Returns webhook subscriptions.
Arguments
  • calendarId:Int= null
  • provider:String= null
Example
query WebhookSubscriptions {
  webhookSubscriptions {
    callbackUrl
    channelId
    created
    expiresAt
    externalResourceId
    externalSubscriptionId
    calendar {
      calendarType
      capacity
      created
      description
      email
      externalId
    }
  }
}