Developers
Set your API contextPick a region and space ID once. Every sample fills in your base URL.
Where do I find these?

In Coevera: open your space's API application and choose Show Access. It shows the space ID and the base URL, whose host starts with your region.

From the API: if you know the space ID, the discovery endpoint GET /api/discovery/spaces/{space_id} returns its region and base URLs, without credentials.

Only the region and space ID are kept, in this browser. Never paste a key or password here.

More in the quickstart

GraphQLRepositoriesappointment

entities.appointment

Read appointment records with the appointment repository, and change them with the appointment mutations. Same records as the REST Appointments entity.

Queries

Fields of entities { appointment { … } }.

Each operation opens an example built from the schema and checked against it on every build. Replace the placeholders, such as <appointment id>, with values from your space.

KindFieldReturns
QUERYgetById(entityId: ID!)
Returns the record with the given id, or null when there is none. Deleted records are returned as well.
AppointmentEntity
Example
Example: getById
query AppointmentGetById {
  entities {
    appointment {
      getById(entityId: "<appointment id>") {
        id
        formattedName
        subject
        modified
      }
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"query AppointmentGetById { entities { appointment { getById(entityId: \"<appointment id>\") { id formattedName subject modified } } } }"}'
QUERYgetByIds(entityIds: [ID!]!)
Returns the records with the given ids; ids without a record are left out. Deleted records are returned as well.
[AppointmentEntity!]!
Example
Example: getByIds
query AppointmentGetByIds {
  entities {
    appointment {
      getByIds(entityIds: ["<appointment id>"]) {
        id
        formattedName
        subject
        modified
      }
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"query AppointmentGetByIds { entities { appointment { getByIds(entityIds: [\"<appointment id>\"]) { id formattedName subject modified } } } }"}'
QUERYgetAll(limit: Int, offset: Int, filter: AppointmentFilterInput, orderBy: [AppointmentOrderByInput!], includeDeleted: Boolean)
Returns the records that match the filter, paged with limit and offset.
[AppointmentEntity!]!
Example
Example: getAll
query AppointmentGetAll {
  entities {
    appointment {
      getAll(limit: 10) {
        id
        formattedName
        subject
        modified
      }
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"query AppointmentGetAll { entities { appointment { getAll(limit: 10) { id formattedName subject modified } } } }"}'
QUERYgetByCriteria(filter: AppointmentFilterInput, orderBy: [AppointmentOrderByInput!], includeDeleted: Boolean, before: String, after: String, first: Int, last: Int)
Returns the records that match the filter as a cursor-paginated connection.
AppointmentEntityConnection
Example
Example: getByCriteria
query AppointmentGetByCriteria {
  entities {
    appointment {
      getByCriteria(first: 10) {
        totalCount
        edges {
          node {
            id
            formattedName
            subject
            modified
          }
        }
        pageInfo {
          hasNextPage
          endCursor
        }
      }
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"query AppointmentGetByCriteria { entities { appointment { getByCriteria(first: 10) { totalCount edges { node { id formattedName subject modified } } pageInfo { hasNextPage endCursor } } } } }"}'
QUERYgetChangedFieldsSinceRevision(id: UUID!, revision: Int!)
Returns the ids of the fields of a record that changed after the given revision. Returns an empty list for entities without change tracking.
[UUID!]!
Example
Example: getChangedFieldsSinceRevision
query AppointmentGetChangedFieldsSinceRevision {
  entities {
    appointment {
      getChangedFieldsSinceRevision(id: "<appointment id>", revision: 10)
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"query AppointmentGetChangedFieldsSinceRevision { entities { appointment { getChangedFieldsSinceRevision(id: \"<appointment id>\", revision: 10) } } }"}'
QUERYgetBySession(includedIds: [UUID!]!, excludedIds: [UUID!]!, sessionId: String!, before: String, after: String, first: Int, last: Int)
Returns a page of records selected in a list or report: all records of the given result plus the explicitly included ids, minus the excluded ids.
AppointmentEntityConnection
Example
Example: getBySession
query AppointmentGetBySession {
  entities {
    appointment {
      getBySession(
        includedIds: ["<appointment id>"]
        excludedIds: ["<appointment id>"]
        sessionId: "<session id>"
        first: 10
      ) {
        totalCount
        edges {
          node {
            id
            formattedName
            subject
            modified
          }
        }
        pageInfo {
          hasNextPage
          endCursor
        }
      }
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"query AppointmentGetBySession { entities { appointment { getBySession( includedIds: [\"<appointment id>\"] excludedIds: [\"<appointment id>\"] sessionId: \"<session id>\" first: 10 ) { totalCount edges { node { id formattedName subject modified } } pageInfo { hasNextPage endCursor } } } } }"}'
QUERYgetByIdFormatted(id: UUID!, fieldIds: [UUID!])
Returns the values of a record's fields formatted for display, keyed by field id.
JSONString
Example
Example: getByIdFormatted
query AppointmentGetByIdFormatted {
  entities {
    appointment {
      getByIdFormatted(id: "<appointment id>")
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"query AppointmentGetByIdFormatted { entities { appointment { getByIdFormatted(id: \"<appointment id>\") } } }"}'
QUERYautoPrefill(mappingId: UUID!, entityId: UUID!, targetEntityTypeId: UUID)
Returns a new, unsaved record pre-filled from a source record according to a field mapping. Nothing is saved; the returned values can be used as input for create.
AppointmentEntity!
Example
Example: autoPrefill
query AppointmentAutoPrefill {
  entities {
    appointment {
      autoPrefill(mappingId: "<mapping id>", entityId: "<appointment id>") {
        id
        formattedName
        subject
        modified
      }
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"query AppointmentAutoPrefill { entities { appointment { autoPrefill(mappingId: \"<mapping id>\", entityId: \"<appointment id>\") { id formattedName subject modified } } } }"}'
QUERYaiAutoPrefill(actionId: String!)
Returns an unsaved record pre-filled with the values proposed by an AI record suggestion, together with the fields the suggestion filled in.
AppointmentAutoPrefill!
Example
Example: aiAutoPrefill
query AppointmentAiAutoPrefill {
  entities {
    appointment {
      aiAutoPrefill(actionId: "<action id>") {
        entity {
          id
          formattedName
          subject
          modified
        }
        fieldIds
      }
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"query AppointmentAiAutoPrefill { entities { appointment { aiAutoPrefill(actionId: \"<action id>\") { entity { id formattedName subject modified } fieldIds } } } }"}'
QUERYautoPrefillFromEmail(emailId: UUID!, mailboxId: UUID)
Returns a new, unsaved appointment pre-filled from an email conversation: subject and description from the last sent email of the conversation that the user can read, the records linked to the conversation (including …
AppointmentAutoPrefill!
Example
Example: autoPrefillFromEmail
query AppointmentAutoPrefillFromEmail {
  entities {
    appointment {
      autoPrefillFromEmail(emailId: "<email id>") {
        entity {
          id
          formattedName
          subject
          modified
        }
        fieldIds
      }
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"query AppointmentAutoPrefillFromEmail { entities { appointment { autoPrefillFromEmail(emailId: \"<email id>\") { entity { id formattedName subject modified } fieldIds } } } }"}'

Mutations

KindMutationDoesReturns
MUTATIONchangeOwnershipAppointment(input: ChangeOwnershipAppointmentInput!)Change owner GraphQL onlyChangeOwnershipAppointmentPayload
Example
Example: changeOwnershipAppointment
mutation ChangeOwnershipAppointment {
  changeOwnershipAppointment(
    input: {ownerId: "<owner id>", unitId: "<unit id>", keepOwnerAsAttendee: false, id: "<appointment id>"}
  ) {
    result {
      id
      formattedName
      subject
      modified
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation ChangeOwnershipAppointment { changeOwnershipAppointment( input: {ownerId: \"<owner id>\", unitId: \"<unit id>\", keepOwnerAsAttendee: false, id: \"<appointment id>\"} ) { result { id formattedName subject modified } } }"}'
MUTATIONrestoreAppointment(input: RestoreAppointmentInput!)Restore a deleted recordRestoreAppointmentPayload
Example
Example: restoreAppointment
mutation RestoreAppointment {
  restoreAppointment(input: {id: "<appointment id>"}) {
    result {
      id
      formattedName
      subject
      modified
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation RestoreAppointment { restoreAppointment(input: {id: \"<appointment id>\"}) { result { id formattedName subject modified } } }"}'
MUTATIONrespondToAppointmentInvitation(input: RespondToAppointmentInvitationInput!)Records the calling user's response to their invitation to the appointment. Fails when the calling user is not among the invited users. GraphQL onlyRespondToAppointmentInvitationPayload
Example
Example: respondToAppointmentInvitation
mutation RespondToAppointmentInvitation {
  respondToAppointmentInvitation(
    input: {response: NoResponse, id: "<appointment id>"}
  ) {
    result {
      id
      formattedName
      subject
      modified
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation RespondToAppointmentInvitation { respondToAppointmentInvitation( input: {response: NoResponse, id: \"<appointment id>\"} ) { result { id formattedName subject modified } } }"}'
MUTATIONsetReminderAppointment(input: SetReminderAppointmentInput!)Set a reminder GraphQL onlySetReminderAppointmentPayload
Example
Example: setReminderAppointment
mutation SetReminderAppointment {
  setReminderAppointment(input: {id: "<appointment id>"}) {
    result {
      id
      formattedName
      subject
      modified
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation SetReminderAppointment { setReminderAppointment(input: {id: \"<appointment id>\"}) { result { id formattedName subject modified } } }"}'
MUTATIONremoveReminderAppointment(input: RemoveReminderAppointmentInput!)Remove the reminder GraphQL onlyRemoveReminderAppointmentPayload
Example
Example: removeReminderAppointment
mutation RemoveReminderAppointment {
  removeReminderAppointment(input: {id: "<appointment id>"}) {
    result {
      id
      formattedName
      subject
      modified
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation RemoveReminderAppointment { removeReminderAppointment(input: {id: \"<appointment id>\"}) { result { id formattedName subject modified } } }"}'
MUTATIONcreateAppointment(input: CreateAppointmentInput!, validationLevel: [ValidationLevel!])Create one recordCreateAppointmentPayload
Example
Example: createAppointment
mutation CreateAppointment {
  createAppointment(
    input: {endDate: "2026-12-15T09:00:00+00:00", ownerId: "<owner id>", subject: "Call Northwind Analytics"}
  ) {
    appointment {
      id
      formattedName
      subject
      modified
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation CreateAppointment { createAppointment( input: {endDate: \"2026-12-15T09:00:00+00:00\", ownerId: \"<owner id>\", subject: \"Call Northwind Analytics\"} ) { appointment { id formattedName subject modified } } }"}'
MUTATIONupdateAppointment(input: UpdateAppointmentInput!, validationLevel: [ValidationLevel!], sessionIdToUpdate: String)Update fieldsUpdateAppointmentPayload
Example
Example: updateAppointment
mutation UpdateAppointment {
  updateAppointment(input: {id: "<appointment id>"}) {
    appointment {
      id
      formattedName
      subject
      modified
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation UpdateAppointment { updateAppointment(input: {id: \"<appointment id>\"}) { appointment { id formattedName subject modified } } }"}'
MUTATIONbulkUpdateAppointment(input: [CreateOrUpdateAppointmentInput!]!, validationLevel: [ValidationLevel!], rollbackMethod: RollbackMethod, match: MatchingInput, linkAttendees: Boolean)Create or update many; per-item resultsBulkUpdateAppointmentPayload
Example
Example: bulkUpdateAppointment
mutation BulkUpdateAppointment {
  bulkUpdateAppointment(input: [{id: "<appointment id>"}]) {
    result {
      created {
        id
      }
      errors {
        index
        code
        message
        entityId
      }
      updated
      deleted
      errorsOnDelete {
        index
        code
        message
        entityId
      }
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation BulkUpdateAppointment { bulkUpdateAppointment(input: [{id: \"<appointment id>\"}]) { result { created { id } errors { index code message entityId } updated deleted errorsOnDelete { index code message entityId } } } }"}'
MUTATIONdeleteAppointment(input: DeleteAppointmentInput!)Soft-deleteDeleteAppointmentPayload
Example
Example: deleteAppointment
mutation DeleteAppointment {
  deleteAppointment(input: {id: "<appointment id>"}) {
    appointment {
      id
      formattedName
      subject
      modified
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation DeleteAppointment { deleteAppointment(input: {id: \"<appointment id>\"}) { appointment { id formattedName subject modified } } }"}'
MUTATIONconvertAppointment(input: CreateAppointmentInput!, sourceEntity: EntityNameEnum!, sourceEntityId: UUID!, operation: RecordConversionOperationEnum!, options: RecordConversionOptions!, sourceEntityApiName: String, validationLevel: [ValidationLevel!])Create from another record GraphQL onlyConvertAppointmentPayload
Example
Example: convertAppointment
mutation ConvertAppointment {
  convertAppointment(
    input: {endDate: "2026-12-15T09:00:00+00:00", ownerId: "<owner id>", subject: "Call Northwind Analytics"}
    sourceEntity: AiAgent
    sourceEntityId: "<source entity id>"
    operation: Nothing
    options: {}
  ) {
    appointment {
      id
      formattedName
      subject
      modified
    }
  }
}
curl 'https://{region}.api.coevera.com/api/v100/app/space/{space_id}/graphql/public' \
  --user "$COEVERA_API_KEY:$COEVERA_API_SECRET" \
  --header 'Content-Type: application/json' \
  --data '{"query":"mutation ConvertAppointment { convertAppointment( input: {endDate: \"2026-12-15T09:00:00+00:00\", ownerId: \"<owner id>\", subject: \"Call Northwind Analytics\"} sourceEntity: AiAgent sourceEntityId: \"<source entity id>\" operation: Nothing options: {} ) { appointment { id formattedName subject modified } } }"}'

Types

The types this repository uses, each with its fields and their descriptions. Types several repositories share, such as PageInfo and the filter fields, are in the types index.

AppointmentEntity object 65 fields: customFields, pendingScheduledActions, isDeleteProtected, …

Meeting or call scheduled in the calendar, with its invited users and contacts, linked to the records it concerns.

FieldTypeDescription
customFieldsJSONString! (1 args)Values of the record's custom fields as a JSON object keyed by custom field apiName (camelCase).
pendingScheduledActionsIntFilled only when a single record is read by its id; otherwise null or an empty list.
isDeleteProtectedBoolean!True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.
idID!Unique identifier of entity.
activeReminderStringTimestamp of the next pending reminder configured for the activity (reminder time, due date or end date as applicable). Empty when no reminder is pending.
mediaTranscriptionIdUUIDId of the linked Media record holding the activity's call recording / transcription, when available.
isDeletedBooleanSpecifies if the entity is considered deleted.
modifiedDateTimeLast modification time.
createdDateTimeCreation time.
activityTypeAppointmentTypeEntityAppointment type that classifies this appointment. Drives form layout and icon.
currencyExchangeRatesListCurrencyExchangeRatesListEntityCurrency exchange rate list used to convert monetary fields linked to this appointment. Empty to inherit the team space default.
ownerClientEntitySales user who owns this appointment.
recurrenceMasterAppointmentEntityMaster appointment of the recurring series this occurrence belongs to. Empty for standalone appointments and for the master itself.
scheduleAppointmentScheduleEntityAppointment schedule (booking link) this appointment was created through, or empty for appointments created directly.
unitSalesUnitEntitySales unit this appointment is assigned to. Determines which team members can see the record under unit-based sharing.
activityTypeIdIDId of the appointment type.
currencyExchangeRatesListIdIDId of the currency exchange rate list applied to this appointment.
descriptionStringFree-form description of the appointment.
durationFloatDuration of the appointment, derived from start/end dates.
endDateDateTime!End timestamp of the appointment.
inviteesCanEditBooleanTrue when invitees are allowed to edit the appointment. Defaults to false.
isRecurrenceActiveBooleanTrue when the recurrence series is still generating new occurrences. Read-only.
isRecurrenceExceptionBooleanTrue when this occurrence has been modified independently of the recurring series. Read-only.
locationStringFree-text physical location of the appointment.
meetingUrlAppointmentMeetingOnline meeting link associated with the appointment (join URL plus meeting type, e.g. Zoom, Teams). Empty when the appointment has no online meeting attached.
occurenceDateDateTimeOriginal date of this occurrence in the recurring series. Set automatically.
organizerStringEmail of the user organising the appointment. Set automatically and used as the reply-to address in invitation emails.
ownerIdID!Id of the appointment owner.
recurrenceMasterIdIDId of the master appointment.
recurrenceRuleStringiCalendar RRULE string describing the recurrence pattern (e.g. "FREQ=WEEKLY;BYDAY=MO,WE"). Empty for non-recurring appointments.
recurrenceTzidStringIANA timezone the recurrence rule is evaluated in.
scheduleIdIDId of the appointment schedule.
scheduleTzidStringIANA timezone the appointment was booked in (e.g. "Europe/Bratislava"). Used to evaluate availability against the schedule.
startDateDateTimeStart timestamp of the appointment.
subjectString!Short summary line shown in calendars and lists.
tableNameString!Discriminator identifying the concrete record type — always "appointment" for Appointment records. Read-only; useful when consuming polymorphic Activity results.
unitIdIDId of the sales unit.
revisionIntRevision when entity was lastly changed.
statusActivityStatusEnum!Current status of the appointment (NotStarted, InProgress, Completed, Canceled). Read-only; derived from the start/end times and the deleted flag.
accountRelationsActivityRelationEntityConnection (8 args)Accounts this appointment is linked to.
contactRelationsActivityRelationEntityConnection (8 args)Contacts this appointment is linked to.
leadRelationsActivityRelationEntityConnection (8 args)Leads this appointment is linked to.
opportunityRelationsActivityRelationEntityConnection (8 args)Opportunities this appointment is linked to.
projectRelationsActivityRelationEntityConnection (8 args)Projects this appointment is linked to, including the per-objective ordering.
quoteRelationsActivityRelationEntityConnection (8 args)Quotes this appointment is linked to.
customEntityRelationsActivityRelationEntityConnection (8 args)Custom entity records this appointment is linked to.
inviteesContactsAppointmentContactInviteesRelationEntityConnection (7 args)Non-user invitees on this appointment, identified by email. Contacts are auto-linked when their email matches an existing Contact record.
inviteesClientsAppointmentClientInviteesRelationEntityConnection (8 args)Internal-user invitees on this appointment.
exchangeEntityIdStringExternal identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine.
gapiEntityIdStringExternal identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine.
o365EntityIdStringExternal identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine.
has3rdPartyMappingBoolean!True when this appointment is mirrored to an external calendar (Office 365, Exchange, Google). Read-only.
reminderAppointmentReminderEntityReminder set by the current authenticated user for this appointment. Per-user; empty when no reminder has been set.
documentsCloudObjectRelationEntityConnection (8 args)Documents linked to this appointment.
commentsActivityCommentEntityConnection (7 args)Comments authored on this appointment.
tagsTagRelationEntityConnection (8 args)Tag labels applied to this appointment.
formattedNameString!Display name of the appointment (alias of subject).
recurrenceAppointmentRecurrenceRecurrence configuration for recurring appointments (parsed RRULE plus exception metadata). Empty for one-off appointments.
modifiedByUserDateTimeTimestamp of the most recent modification made by an end user (excluding system changes). Read-only; computed by Coevera.
instancePermissions[EntityPermsEnum!]! (1 args)Permissions the current user has on this record, out of the requested ones.
relatedEntitiesDrilldownCompactViewDrilldownModel! (1 args)Records of the given entity type that are related to this record, as a drilldown list.
charts[DashboardChartData!] (1 args)Data of the given preview pane charts and lists, computed for this record.
chartsDrilldownCompactViewDrilldownModel! (3 args)Records behind one preview pane chart of this record: all records of a list chart, or the records of a single data point of a report chart.
fields[InterfaceFieldData]! (2 args)Values of the fields shown in the record's preview pane, as configured for the record's type.
mediaTranscriptionMediaEntityRecording attached to this activity, with its transcription and summary when available; null when there is none.
AppointmentEntityConnection object pageInfo: PageInfo!, edges: [AppointmentEntityEdge]!, totalCount: Int

Paginated list of Appointment records.

FieldTypeDescription
pageInfoPageInfo!Pagination data for this connection.
edges[AppointmentEntityEdge]!Contains the nodes in this connection.
totalCountIntTotal number of items in the connection.
AppointmentEntityEdge object node: AppointmentEntity, cursor: String!

A Relay edge containing a AppointmentEntity and its cursor.

FieldTypeDescription
nodeAppointmentEntityThe item at the end of the edge
cursorString!A cursor for use in pagination
ActivityStatusEnumFilterInput input eq: [ActivityStatusEnum!], NOT: ActivityStatusEnumFilterInput

Conditions on an enumeration field. Several conditions given together must all match.

Input fieldTypeDescription
eq[ActivityStatusEnum!]Matches any of the listed values.
NOTActivityStatusEnumFilterInputMatches values that do not meet this condition.
AppointmentFilterInput input AND, OR, NOT, globalSearchQuery, one condition per field

Filter conditions for Appointment records. Conditions on different fields are combined with AND; use OR, AND and NOT for other combinations.

Input fieldTypeDescription
OR[AppointmentFilterInput!]Matches records that meet at least one of the listed filters.
AND[AppointmentFilterInput!]Matches records that meet all of the listed filters.
NOTAppointmentFilterInputMatches records that do not meet this filter.
globalSearchQueryStringSearch term matched against the fields that the global search covers for this entity.
idEntityFilterStringFieldUnique identifier of entity.
isDeletedBooleanSpecifies if the entity is considered deleted.
modifiedEntityFilterDateTimeFieldLast modification time.
createdEntityFilterDateTimeFieldCreation time.
activityTypeIdEntityFilterStringFieldId of the appointment type.
currencyExchangeRatesListIdEntityFilterStringFieldId of the currency exchange rate list applied to this appointment.
descriptionEntityFilterStringFieldFree-form description of the appointment.
durationEntityFilterNumberFieldDuration of the appointment, derived from start/end dates.
endDateEntityFilterDateTimeFieldEnd timestamp of the appointment.
inviteesCanEditBooleanTrue when invitees are allowed to edit the appointment. Defaults to false.
isRecurrenceActiveBooleanTrue when the recurrence series is still generating new occurrences. Read-only.
isRecurrenceExceptionBooleanTrue when this occurrence has been modified independently of the recurring series. Read-only.
locationEntityFilterStringFieldFree-text physical location of the appointment.
occurenceDateEntityFilterDateTimeFieldOriginal date of this occurrence in the recurring series. Set automatically.
organizerEntityFilterStringFieldEmail of the user organising the appointment. Set automatically and used as the reply-to address in invitation emails.
ownerIdEntityFilterStringFieldId of the appointment owner.
recurrenceMasterIdEntityFilterStringFieldId of the master appointment.
recurrenceRuleEntityFilterStringFieldiCalendar RRULE string describing the recurrence pattern (e.g. "FREQ=WEEKLY;BYDAY=MO,WE"). Empty for non-recurring appointments.
recurrenceTzidEntityFilterStringFieldIANA timezone the recurrence rule is evaluated in.
scheduleIdEntityFilterStringFieldId of the appointment schedule.
scheduleTzidEntityFilterStringFieldIANA timezone the appointment was booked in (e.g. "Europe/Bratislava"). Used to evaluate availability against the schedule.
startDateEntityFilterDateTimeFieldStart timestamp of the appointment.
subjectEntityFilterStringFieldShort summary line shown in calendars and lists.
tableNameEntityFilterStringFieldDiscriminator identifying the concrete record type — always "appointment" for Appointment records. Read-only; useful when consuming polymorphic Activity results.
unitIdEntityFilterStringFieldId of the sales unit.
revisionEntityFilterNumberFieldRevision when entity was lastly changed.
statusActivityStatusEnumFilterInputCurrent status of the appointment (NotStarted, InProgress, Completed, Canceled). Read-only; derived from the start/end times and the deleted flag.
exchangeEntityIdStringExternal identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine.
gapiEntityIdStringExternal identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine.
o365EntityIdStringExternal identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine.
withCustom[CustomField!]Conditions on custom fields, each identified by its api name. All listed conditions must match.
activityTypeAppointmentTypeFilterInputAppointment type that classifies this appointment. Drives form layout and icon. Matches records where a related record meets these conditions.
currencyExchangeRatesListCurrencyExchangeRatesListFilterInputCurrency exchange rate list used to convert monetary fields linked to this appointment. Empty to inherit the team space default. Matches records where a related record meets these conditions.
ownerClientFilterInputSales user who owns this appointment. Matches records where a related record meets these conditions.
recurrenceMasterAppointmentFilterInputMaster appointment of the recurring series this occurrence belongs to. Empty for standalone appointments and for the master itself. Matches records where a related record meets these conditions.
scheduleAppointmentScheduleFilterInputAppointment schedule (booking link) this appointment was created through, or empty for appointments created directly. Matches records where a related record meets these conditions.
unitSalesUnitFilterInputSales unit this appointment is assigned to. Determines which team members can see the record under unit-based sharing. Matches records where a related record meets these conditions.
accountRelationsActivityRelationFilterInputAccounts this appointment is linked to. Matches records where a related record meets these conditions.
contactRelationsActivityRelationFilterInputContacts this appointment is linked to. Matches records where a related record meets these conditions.
leadRelationsActivityRelationFilterInputLeads this appointment is linked to. Matches records where a related record meets these conditions.
opportunityRelationsActivityRelationFilterInputOpportunities this appointment is linked to. Matches records where a related record meets these conditions.
projectRelationsActivityRelationFilterInputProjects this appointment is linked to, including the per-objective ordering. Matches records where a related record meets these conditions.
quoteRelationsActivityRelationFilterInputQuotes this appointment is linked to. Matches records where a related record meets these conditions.
customEntityRelationsActivityRelationFilterInputCustom entity records this appointment is linked to. Matches records where a related record meets these conditions.
inviteesContactsAppointmentContactInviteesRelationFilterInputNon-user invitees on this appointment, identified by email. Contacts are auto-linked when their email matches an existing Contact record. Matches records where a related record meets these conditions.
inviteesClientsAppointmentClientInviteesRelationFilterInputInternal-user invitees on this appointment. Matches records where a related record meets these conditions.
reminderAppointmentReminderFilterInputReminder set by the current authenticated user for this appointment. Per-user; empty when no reminder has been set. Matches records where a related record meets these conditions.
documentsCloudObjectRelationFilterInputDocuments linked to this appointment. Matches records where a related record meets these conditions.
commentsActivityCommentFilterInputComments authored on this appointment. Matches records where a related record meets these conditions.
tagsTagRelationFilterInputTag labels applied to this appointment. Matches records where a related record meets these conditions.
AppointmentOrderByInput input Asc or Desc per field

Sorting of Appointment records. Set exactly one field in each item; list several items to sort by more fields, in order of priority.

Input fieldTypeDescription
idOrderByEnumUnique identifier of entity.
isDeletedOrderByEnumSpecifies if the entity is considered deleted.
modifiedOrderByEnumLast modification time.
createdOrderByEnumCreation time.
activityType[AppointmentTypeOrderByNestedInput!]Appointment type that classifies this appointment. Drives form layout and icon. Sorts by fields of the related record, listed in order of priority.
currencyExchangeRatesList[CurrencyExchangeRatesListOrderByNestedInput!]Currency exchange rate list used to convert monetary fields linked to this appointment. Empty to inherit the team space default. Sorts by fields of the related record, listed in order of priority.
owner[ClientOrderByNestedInput!]Sales user who owns this appointment. Sorts by fields of the related record, listed in order of priority.
recurrenceMaster[AppointmentOrderByNestedInput!]Master appointment of the recurring series this occurrence belongs to. Empty for standalone appointments and for the master itself. Sorts by fields of the related record, listed in order of priority.
schedule[AppointmentScheduleOrderByNestedInput!]Appointment schedule (booking link) this appointment was created through, or empty for appointments created directly. Sorts by fields of the related record, listed in order of priority.
unit[SalesUnitOrderByNestedInput!]Sales unit this appointment is assigned to. Determines which team members can see the record under unit-based sharing. Sorts by fields of the related record, listed in order of priority.
activityTypeIdOrderByEnumId of the appointment type.
currencyExchangeRatesListIdOrderByEnumId of the currency exchange rate list applied to this appointment.
descriptionOrderByEnumFree-form description of the appointment.
durationOrderByEnumDuration of the appointment, derived from start/end dates.
endDateOrderByEnumEnd timestamp of the appointment.
inviteesCanEditOrderByEnumTrue when invitees are allowed to edit the appointment. Defaults to false.
locationOrderByEnumFree-text physical location of the appointment.
ownerIdOrderByEnumId of the appointment owner.
recurrenceMasterIdOrderByEnumId of the master appointment.
scheduleIdOrderByEnumId of the appointment schedule.
startDateOrderByEnumStart timestamp of the appointment.
subjectOrderByEnumShort summary line shown in calendars and lists.
unitIdOrderByEnumId of the sales unit.
revisionOrderByEnumRevision when entity was lastly changed.
statusOrderByEnumCurrent status of the appointment (NotStarted, InProgress, Completed, Canceled). Read-only; derived from the start/end times and the deleted flag.
exchangeEntityIdOrderByEnumExternal identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine.
gapiEntityIdOrderByEnumExternal identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine.
o365EntityIdOrderByEnumExternal identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine.
reminder[AppointmentReminderOrderByNestedInput!]Reminder set by the current authenticated user for this appointment. Per-user; empty when no reminder has been set. Sorts by fields of the related record, listed in order of priority.
withCustomCommonEntityRepositoryOrderByCustomFieldSorts by a custom field.
AppointmentMeetingInput input joinUrl: String, type: AppointmentMeetingTypeEnum!

Online meeting to link to an appointment: an existing meeting, or the service in which a new one is created.

Input fieldTypeDescription
joinUrlStringJoin URL of an existing online meeting. Leave empty to have a new meeting created with the selected service; when that fails, no meeting is attached.
typeAppointmentMeetingTypeEnum!Online meeting service: Microsoft Teams (MsTeams) or Zoom.
AppointmentReminderOrderByNestedInput input 10 fields: id, isDeleted, modified, …

Sorting by a field of the related AppointmentReminder record. Set exactly one field in each item.

Input fieldTypeDescription
idOrderByEnumUnique identifier of entity.
isDeletedOrderByEnumSpecifies if the entity is considered deleted.
modifiedOrderByEnumLast modification time.
createdOrderByEnumCreation time.
appointmentIdOrderByEnumId of the appointment this reminder belongs to.
endDateOffsetOrderByEnumSeconds before the appointment start when the reminder should fire.
ownerIdOrderByEnumId of the user who set the reminder.
snoozeDateOrderByEnumTimestamp when a snoozed reminder should fire again. Empty when not snoozed.
statusOrderByEnumCurrent state of the reminder: Scheduled to fire at its set time, Snoozed until snoozeDate, or Dismissed.
revisionOrderByEnumRevision when entity was lastly changed.
AppointmentScheduleOrderByNestedInput input 32 fields: id, isDeleted, modified, …

Sorting by a field of the related AppointmentSchedule record. Set exactly one field in each item.

Input fieldTypeDescription
idOrderByEnumUnique identifier of entity.
isDeletedOrderByEnumSpecifies if the entity is considered deleted.
modifiedOrderByEnumLast modification time.
createdOrderByEnumCreation time.
appointmentDescriptionOrderByEnumDescription applied to appointments booked through this schedule.
appointmentDurationOrderByEnumDuration of each booked appointment.
appointmentLocationOrderByEnumLocation applied to appointments booked through this schedule.
appointmentLocationTypeOrderByEnumWhere booked appointments take place: the location given in appointmentLocation (Custom), or a Microsoft Teams (Microsoft) or Zoom (Zoom) online meeting.
appointmentOwnerIdOrderByEnumId of the user receiving the booking.
appointmentSubjectOrderByEnumSubject applied to appointments booked through this schedule.
appointmentSubjectUsesScheduleNameOrderByEnumWhen true, booked appointments use the scheduleName as their subject instead of appointmentSubject.
appointmentTypeIdOrderByEnumId of the appointment type used for appointments booked through the schedule.
bufferTimeAfterOrderByEnumBuffer in seconds kept free after each booked appointment (e.g. 900 = 15 minutes).
bufferTimeBeforeOrderByEnumBuffer in seconds kept free before each booked appointment (e.g. 900 = 15 minutes).
confirmationPageTypeOrderByEnumWhat is shown to the booker after confirming (e.g. default Coevera page or a custom redirect URL).
confirmationPageUrlOrderByEnumCustom URL the booker is redirected to after confirming. Used when confirmationPageType selects a custom redirect.
isEnabledOrderByEnumMaster switch for the schedule. Disabled schedules do not accept new bookings.
minimumNoticeTimeOrderByEnumMinimum notice in seconds required before a slot can be booked (e.g. 3600 = one hour).
nameOrderByEnumAdmin-only name for the schedule, used in pickers and lists. Not shown to bookers; use scheduleName for the public-facing name.
ownerIdOrderByEnumId of the schedule owner.
planningDayOffsetOrderByEnumWith Offset planning, how many days ahead the schedule remains bookable.
planningPeriodFromOrderByEnumWith Period planning, first date bookings are accepted for.
planningPeriodToOrderByEnumWith Period planning, last date bookings are accepted for.
planningTypeOrderByEnumTime window in which the schedule accepts bookings: any future date (Infinite), up to planningDayOffset days ahead (Offset), or between planningPeriodFrom and planningPeriodTo (Period).
reminderEmailEnabledOrderByEnumTrue when a reminder email is sent to invitees ahead of the booked appointment.
reminderEmailOffsetOrderByEnumTime before the appointment when the reminder email is sent. Interpreted using reminderEmailOffsetType.
reminderEmailOffsetTypeOrderByEnumTime unit of reminderEmailOffset: Minute, Hour, Day or Week.
replyCompanyEmailIdOrderByEnumId of the company email used as the From / Reply-To on schedule confirmation emails. Empty falls back to the team space default.
scheduleNameOrderByEnumPublic-facing name of the schedule, shown to bookers on the booking page.
timeIncrementOrderByEnumStep in seconds between offered start times (e.g. 900 means slots at :00, :15, :30, :45).
typeOrderByEnumKind of meetings booked through the schedule: one-to-one (OneToOne) or group (Group) meetings.
urlOrderByEnumPublic URL slug of the schedule, used to share the booking page.
ChangeOwnershipAppointmentInput input 5 fields: ownerId, unitId, keepOwnerAsAttendee, …

Parameters of the changeOwnershipAppointment mutation.

Input fieldTypeDescription
ownerIdID!User who becomes the new owner of the appointment.
unitIdID!Sales unit the appointment is assigned to.
keepOwnerAsAttendeeBoolean!When true, the previous owner (if still an active user) is added to the invited users with no response yet, unless already invited.
idID!Identifier of the AppointmentEntity to perform the action on.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
CreateAppointmentClientInviteesRelationNoAppointmentBackrefInput input 5 fields: modified, created, clientId, …

Field values of a new AppointmentClientInviteesRelation record, created together with the record it belongs to.

Input fieldTypeDescription
modifiedDateTimeLast modification time.
createdDateTimeCreation time.
clientIdID!Id of the user.
responseInviteeResponseEnumResponse of the invitee to the appointment invitation: NoResponse, Accepted or Rejected.
revisionIntRevision when entity was lastly changed.
CreateAppointmentContactInviteesRelationNoAppointmentBackrefInput input 9 fields: modified, created, contactId, …

Field values of a new AppointmentContactInviteesRelation record, created together with the record it belongs to.

Input fieldTypeDescription
modifiedDateTimeLast modification time.
createdDateTimeCreation time.
contactIdIDId of the matched contact.
emailString!Email address of the invitee. Required and used as the natural key for the link.
firstNameStringGiven name of the invitee, when supplied.
inviteeTypeAppointmentInviteeTypeEnumHow the invitee was added: invited directly on the appointment (Standard), or the person who booked it through an appointment schedule (Scheduled).
lastNameStringFamily name of the invitee, when supplied.
responseInviteeResponseEnumResponse of the invitee to the appointment invitation: NoResponse, Accepted or Rejected.
revisionIntRevision when entity was lastly changed.
CreateAppointmentInput input 40 fields: clientMutationId, mediaTranscriptionId, modified, …

Field values of a new Appointment record.

Input fieldTypeDescription
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
mediaTranscriptionIdUUIDId of the linked Media record holding the activity's call recording / transcription, when available.
modifiedDateTimeLast modification time.
createdDateTimeCreation time.
activityTypeIdIDId of the appointment type.
currencyExchangeRatesListIdIDId of the currency exchange rate list applied to this appointment.
descriptionStringFree-form description of the appointment.
durationFloatDuration of the appointment, derived from start/end dates.
endDateDateTime!End timestamp of the appointment.
inviteesCanEditBooleanTrue when invitees are allowed to edit the appointment. Defaults to false.
isRecurrenceActiveBooleanTrue when the recurrence series is still generating new occurrences. Read-only.
isRecurrenceExceptionBooleanTrue when this occurrence has been modified independently of the recurring series. Read-only.
locationStringFree-text physical location of the appointment.
meetingUrlAppointmentMeetingInputOnline meeting link associated with the appointment (join URL plus meeting type, e.g. Zoom, Teams). Empty when the appointment has no online meeting attached.
occurenceDateDateTimeOriginal date of this occurrence in the recurring series. Set automatically.
organizerStringEmail of the user organising the appointment. Set automatically and used as the reply-to address in invitation emails.
ownerIdID!Id of the appointment owner.
recurrenceMasterIdIDId of the master appointment.
recurrenceRuleStringiCalendar RRULE string describing the recurrence pattern (e.g. "FREQ=WEEKLY;BYDAY=MO,WE"). Empty for non-recurring appointments.
recurrenceTzidStringIANA timezone the recurrence rule is evaluated in.
scheduleIdIDId of the appointment schedule.
scheduleTzidStringIANA timezone the appointment was booked in (e.g. "Europe/Bratislava"). Used to evaluate availability against the schedule.
startDateDateTimeStart timestamp of the appointment.
subjectString!Short summary line shown in calendars and lists.
unitIdIDId of the sales unit.
customFieldsJSONStringCustom field values to set, as a JSON object keyed by custom field API name, e.g. {"cfBudget": 1000}. Only the custom fields included are changed; each value uses the format of that field.
revisionIntRevision when entity was lastly changed.
accountRelations[CreateActivityRelationNoActivityBackrefInput!]Accounts this appointment is linked to.
contactRelations[CreateActivityRelationNoActivityBackrefInput!]Contacts this appointment is linked to.
leadRelations[CreateActivityRelationNoActivityBackrefInput!]Leads this appointment is linked to.
opportunityRelations[CreateActivityRelationNoActivityBackrefInput!]Opportunities this appointment is linked to.
projectRelations[CreateActivityRelationNoActivityBackrefInput!]Projects this appointment is linked to, including the per-objective ordering.
quoteRelations[CreateActivityRelationNoActivityBackrefInput!]Quotes this appointment is linked to.
customEntityRelations[CreateActivityRelationNoActivityBackrefInput!]Custom entity records this appointment is linked to.
inviteesContacts[CreateAppointmentContactInviteesRelationNoAppointmentBackrefInput!]Non-user invitees on this appointment, identified by email. Contacts are auto-linked when their email matches an existing Contact record.
inviteesClients[CreateAppointmentClientInviteesRelationNoAppointmentBackrefInput!]Internal-user invitees on this appointment.
reminderCreateAppointmentReminderNoAppointmentBackrefInputReminder set by the current authenticated user for this appointment. Per-user; empty when no reminder has been set.
documents[CreateCloudObjectRelationNoBackrefInput!]Documents linked to this appointment.
comments[CreateActivityCommentNoActivityBackrefInput!]Comments authored on this appointment.
tags[CreateTagRelationNoAppointmentBackrefInput!]Tag labels applied to this appointment.
CreateAppointmentReminderNoAppointmentBackrefInput input 7 fields: modified, created, endDateOffset, …

Field values of a new AppointmentReminder record, created together with the record it belongs to.

Input fieldTypeDescription
modifiedDateTimeLast modification time.
createdDateTimeCreation time.
endDateOffsetInt!Seconds before the appointment start when the reminder should fire.
ownerIdID!Id of the user who set the reminder.
snoozeDateDateTimeTimestamp when a snoozed reminder should fire again. Empty when not snoozed.
statusReminderStatusEnumCurrent state of the reminder: Scheduled to fire at its set time, Snoozed until snoozeDate, or Dismissed.
revisionIntRevision when entity was lastly changed.
CreateOrUpdateAppointmentInput input 44 fields: clientMutationId, id, mediaTranscriptionId, …

Field values of an Appointment record to create, or to update when its id is set.

Input fieldTypeDescription
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
idIDUnique identifier of entity.
mediaTranscriptionIdUUIDId of the linked Media record holding the activity's call recording / transcription, when available.
modifiedDateTimeLast modification time.
createdDateTimeCreation time.
activityTypeIdIDId of the appointment type.
currencyExchangeRatesListIdIDId of the currency exchange rate list applied to this appointment.
descriptionStringFree-form description of the appointment.
durationFloatDuration of the appointment, derived from start/end dates.
endDateDateTimeEnd timestamp of the appointment.
inviteesCanEditBooleanTrue when invitees are allowed to edit the appointment. Defaults to false.
isRecurrenceActiveBooleanTrue when the recurrence series is still generating new occurrences. Read-only.
isRecurrenceExceptionBooleanTrue when this occurrence has been modified independently of the recurring series. Read-only.
locationStringFree-text physical location of the appointment.
meetingUrlAppointmentMeetingInputOnline meeting link associated with the appointment (join URL plus meeting type, e.g. Zoom, Teams). Empty when the appointment has no online meeting attached.
occurenceDateDateTimeOriginal date of this occurrence in the recurring series. Set automatically.
organizerStringEmail of the user organising the appointment. Set automatically and used as the reply-to address in invitation emails.
ownerIdIDId of the appointment owner.
recurrenceMasterIdIDId of the master appointment.
recurrenceRuleStringiCalendar RRULE string describing the recurrence pattern (e.g. "FREQ=WEEKLY;BYDAY=MO,WE"). Empty for non-recurring appointments.
recurrenceTzidStringIANA timezone the recurrence rule is evaluated in.
scheduleIdIDId of the appointment schedule.
scheduleTzidStringIANA timezone the appointment was booked in (e.g. "Europe/Bratislava"). Used to evaluate availability against the schedule.
startDateDateTimeStart timestamp of the appointment.
subjectStringShort summary line shown in calendars and lists.
unitIdIDId of the sales unit.
customFieldsJSONStringCustom field values to set, as a JSON object keyed by custom field API name, e.g. {"cfBudget": 1000}. Only the custom fields included are changed; each value uses the format of that field.
revisionIntRevision when entity was lastly changed.
accountRelations[CreateActivityRelationNoActivityBackrefInput!]Accounts this appointment is linked to.
contactRelations[CreateActivityRelationNoActivityBackrefInput!]Contacts this appointment is linked to.
leadRelations[CreateActivityRelationNoActivityBackrefInput!]Leads this appointment is linked to.
opportunityRelations[CreateActivityRelationNoActivityBackrefInput!]Opportunities this appointment is linked to.
projectRelations[CreateActivityRelationNoActivityBackrefInput!]Projects this appointment is linked to, including the per-objective ordering.
quoteRelations[CreateActivityRelationNoActivityBackrefInput!]Quotes this appointment is linked to.
customEntityRelations[CreateActivityRelationNoActivityBackrefInput!]Custom entity records this appointment is linked to.
inviteesContacts[CreateAppointmentContactInviteesRelationNoAppointmentBackrefInput!]Non-user invitees on this appointment, identified by email. Contacts are auto-linked when their email matches an existing Contact record.
inviteesClients[CreateAppointmentClientInviteesRelationNoAppointmentBackrefInput!]Internal-user invitees on this appointment.
exchangeEntityIdStringExternal identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine.
gapiEntityIdStringExternal identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine.
o365EntityIdStringExternal identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine.
reminderUpdateAppointmentReminderNoAppointmentBackrefInputReminder set by the current authenticated user for this appointment. Per-user; empty when no reminder has been set.
documents[CreateCloudObjectRelationNoBackrefInput!]Documents linked to this appointment.
comments[CreateActivityCommentNoActivityBackrefInput!]Comments authored on this appointment.
tags[CreateTagRelationNoAppointmentBackrefInput!]Tag labels applied to this appointment.
CreateTagRelationNoAppointmentBackrefInput input 15 fields: modified, created, accountId, …

Field values of a new TagRelation record, created together with the record it belongs to.

Input fieldTypeDescription
modifiedDateTimeLast modification time.
createdDateTimeCreation time.
accountIdIDId of the linked account.
contactIdIDId of the linked contact.
customEntityIdIDId of the linked custom entity record.
emailIdIDId of the linked email.
leadIdIDId of the linked lead.
opptyIdIDId of the linked opportunity.
processIdIDId of the linked sales process.
projectIdIDId of the linked project.
quoteIdIDId of the linked quote.
solutionIdIDId of the linked solution.
tagIdID!Id of the tag attached to the record.
taskIdIDId of the linked task.
revisionIntRevision when entity was lastly changed.
DeleteAppointmentInput input clientMutationId: String, id: ID!

Id of the Appointment record to delete.

Input fieldTypeDescription
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
idID!Unique identifier of entity.
RemoveReminderAppointmentInput input id: ID!, clientMutationId: String

Parameters of the removeReminderAppointment mutation.

Input fieldTypeDescription
idID!Identifier of the AppointmentEntity to perform the action on.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
RespondToAppointmentInvitationInput input response: InviteeResponseEnum!, id: ID!, clientMutationId: String

Parameters of the respondToAppointmentInvitation mutation.

Input fieldTypeDescription
responseInviteeResponseEnum!The response: Accepted, Rejected, or NoResponse to clear an earlier answer.
idID!Identifier of the AppointmentEntity to perform the action on.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
RestoreAppointmentInput input id: ID!, clientMutationId: String

Parameters of the restoreAppointment mutation.

Input fieldTypeDescription
idID!Identifier of the AppointmentEntity to perform the action on.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
SetReminderAppointmentInput input 5 fields: endDateOffset, status, snoozeDate, …

Parameters of the setReminderAppointment mutation.

Input fieldTypeDescription
endDateOffsetIntHow long before the appointment start the reminder fires, in seconds. When a first reminder is created without an offset and without the Scheduled status, the user's default appointment reminder is used.
statusReminderStatusEnumState of the reminder: Scheduled, Snoozed or Dismissed. Omit to keep the current state.
snoozeDateDateTimeWhen a snoozed reminder fires again; used with the Snoozed status.
idID!Identifier of the AppointmentEntity to perform the action on.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
UpdateAppointmentInput input 43 fields: clientMutationId, id, mediaTranscriptionId, …

Id of an Appointment record and the field values to change.

Input fieldTypeDescription
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
idID!Unique identifier of entity.
mediaTranscriptionIdUUIDId of the linked Media record holding the activity's call recording / transcription, when available.
modifiedDateTimeLast modification time.
createdDateTimeCreation time.
activityTypeIdIDId of the appointment type.
currencyExchangeRatesListIdIDId of the currency exchange rate list applied to this appointment.
descriptionStringFree-form description of the appointment.
durationFloatDuration of the appointment, derived from start/end dates.
endDateDateTimeEnd timestamp of the appointment.
inviteesCanEditBooleanTrue when invitees are allowed to edit the appointment. Defaults to false.
isRecurrenceActiveBooleanTrue when the recurrence series is still generating new occurrences. Read-only.
isRecurrenceExceptionBooleanTrue when this occurrence has been modified independently of the recurring series. Read-only.
locationStringFree-text physical location of the appointment.
meetingUrlAppointmentMeetingInputOnline meeting link associated with the appointment (join URL plus meeting type, e.g. Zoom, Teams). Empty when the appointment has no online meeting attached.
occurenceDateDateTimeOriginal date of this occurrence in the recurring series. Set automatically.
organizerStringEmail of the user organising the appointment. Set automatically and used as the reply-to address in invitation emails.
ownerIdIDId of the appointment owner.
recurrenceMasterIdIDId of the master appointment.
recurrenceRuleStringiCalendar RRULE string describing the recurrence pattern (e.g. "FREQ=WEEKLY;BYDAY=MO,WE"). Empty for non-recurring appointments.
recurrenceTzidStringIANA timezone the recurrence rule is evaluated in.
scheduleIdIDId of the appointment schedule.
scheduleTzidStringIANA timezone the appointment was booked in (e.g. "Europe/Bratislava"). Used to evaluate availability against the schedule.
startDateDateTimeStart timestamp of the appointment.
subjectStringShort summary line shown in calendars and lists.
unitIdIDId of the sales unit.
customFieldsJSONStringCustom field values to set, as a JSON object keyed by custom field API name, e.g. {"cfBudget": 1000}. Only the custom fields included are changed; each value uses the format of that field.
revisionIntRevision when entity was lastly changed.
accountRelations[CreateActivityRelationNoActivityBackrefInput!]Accounts this appointment is linked to.
contactRelations[CreateActivityRelationNoActivityBackrefInput!]Contacts this appointment is linked to.
leadRelations[CreateActivityRelationNoActivityBackrefInput!]Leads this appointment is linked to.
opportunityRelations[CreateActivityRelationNoActivityBackrefInput!]Opportunities this appointment is linked to.
projectRelations[CreateActivityRelationNoActivityBackrefInput!]Projects this appointment is linked to, including the per-objective ordering.
quoteRelations[CreateActivityRelationNoActivityBackrefInput!]Quotes this appointment is linked to.
customEntityRelations[CreateActivityRelationNoActivityBackrefInput!]Custom entity records this appointment is linked to.
inviteesContacts[CreateAppointmentContactInviteesRelationNoAppointmentBackrefInput!]Non-user invitees on this appointment, identified by email. Contacts are auto-linked when their email matches an existing Contact record.
inviteesClients[CreateAppointmentClientInviteesRelationNoAppointmentBackrefInput!]Internal-user invitees on this appointment.
exchangeEntityIdStringExternal identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine.
gapiEntityIdStringExternal identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine.
o365EntityIdStringExternal identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine.
documents[CreateCloudObjectRelationNoBackrefInput!]Documents linked to this appointment.
comments[CreateActivityCommentNoActivityBackrefInput!]Comments authored on this appointment.
tags[CreateTagRelationNoAppointmentBackrefInput!]Tag labels applied to this appointment.
UpdateAppointmentReminderNoAppointmentBackrefInput input 7 fields: modified, created, endDateOffset, …

Id of an AppointmentReminder record and the field values to change, updated together with the record it belongs to.

Input fieldTypeDescription
modifiedDateTimeLast modification time.
createdDateTimeCreation time.
endDateOffsetIntSeconds before the appointment start when the reminder should fire.
ownerIdIDId of the user who set the reminder.
snoozeDateDateTimeTimestamp when a snoozed reminder should fire again. Empty when not snoozed.
statusReminderStatusEnumCurrent state of the reminder: Scheduled to fire at its set time, Snoozed until snoozeDate, or Dismissed.
revisionIntRevision when entity was lastly changed.
BulkUpdateAppointmentPayload object result: BulkUpdateResults!

Result of the bulkUpdateAppointment mutation.

FieldTypeDescription
resultBulkUpdateResults!Ids of the created, updated and deleted records, and the items that failed.
ChangeOwnershipAppointmentPayload object result: AppointmentEntity, clientMutationId: String

Result of the changeOwnershipAppointment mutation.

FieldTypeDescription
resultAppointmentEntityThe appointment with its new owner.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
ConvertAppointmentPayload object appointment: AppointmentEntity!, clientMutationId: String

Result of the convertAppointment mutation.

FieldTypeDescription
appointmentAppointmentEntity!The created record.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
CreateAppointmentPayload object appointment: AppointmentEntity, clientMutationId: String

Result of the createAppointment mutation.

FieldTypeDescription
appointmentAppointmentEntityThe created record.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
DeleteAppointmentPayload object appointment: AppointmentEntity, clientMutationId: String

Result of the deleteAppointment mutation.

FieldTypeDescription
appointmentAppointmentEntityThe deleted record.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
RemoveReminderAppointmentPayload object result: AppointmentEntity, clientMutationId: String

Result of the removeReminderAppointment mutation.

FieldTypeDescription
resultAppointmentEntityThe appointment with the dismissed reminder.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
RespondToAppointmentInvitationPayload object result: AppointmentEntity, clientMutationId: String

Result of the respondToAppointmentInvitation mutation.

FieldTypeDescription
resultAppointmentEntityThe appointment with the updated response.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
RestoreAppointmentPayload object result: AppointmentEntity, clientMutationId: String

Result of the restoreAppointment mutation.

FieldTypeDescription
resultAppointmentEntityThe restored record.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
SetReminderAppointmentPayload object result: AppointmentEntity, clientMutationId: String

Result of the setReminderAppointment mutation.

FieldTypeDescription
resultAppointmentEntityThe appointment with the updated reminder.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
UpdateAppointmentPayload object appointment: AppointmentEntity, clientMutationId: String

Result of the updateAppointment mutation.

FieldTypeDescription
appointmentAppointmentEntityThe updated record.
clientMutationIdStringOptional client-supplied identifier passed on a mutation input and echoed back unchanged on its payload, so a client can correlate the response with its request (Relay convention).
ActivityStatusEnum enum NotStarted, InProgress, Waiting, Completed, Deferred, Canceled

Status of a task or appointment.

ValueDescription
NotStartedTask not started yet, or appointment that starts in the future.
InProgressTask being worked on, or appointment taking place now.
WaitingTask waiting on someone or something else.
CompletedTask done, or appointment that has already ended.
DeferredTask postponed.
CanceledAppointment that was canceled.
AppointmentAutoPrefill object entity: AppointmentEntity, fieldIds: [UUID!]!

New, unsaved appointment pre-filled by AI or from an email conversation, with the ids of the fields that were filled in.

FieldTypeDescription
entityAppointmentEntityNew appointment carrying the pre-filled values; it is not saved.
fieldIds[UUID!]!Ids of the fields that were filled in.
AppointmentMeeting object joinUrl: String!, type: AppointmentMeetingTypeEnum!

Online meeting (Microsoft Teams or Zoom) linked to an appointment.

FieldTypeDescription
joinUrlString!URL participants use to join the online meeting.
typeAppointmentMeetingTypeEnum!Online meeting service: Microsoft Teams (MsTeams) or Zoom.
AppointmentMeetingTypeEnum enum MsTeams, Zoom

Online meeting service used for an appointment's meeting link.

ValueDescription
MsTeamsMicrosoft Teams meeting.
ZoomZoom meeting.
AppointmentRecurrence object rrule: String!, rruleHumanReadable: String!, calendarUrl: String

Recurrence of an appointment that belongs to a recurring series.

FieldTypeDescription
rruleString!Recurrence rule of the series in iCalendar (RFC 5545) RRULE format. Empty when the rule is not known.
rruleHumanReadableString!The recurrence rule as readable text in the language of the current user, e.g. "Every week on Monday". Empty when the rule cannot be read.
calendarUrlStringLink to open the appointment in Outlook on the web, for series synchronized from Office 365. Empty otherwise.