Breaking changes
This page lists past and planned changes to the EventsAir GraphQL API that may impact integrated applications. While we endeavour to maintain backward compatibility as the API evolves, scenarios may arise that require a breaking change.
This page is intended to provide advanced notice of breaking changes so that developers can plan ahead to test their integrated applications and make any necessary changes.
Planned breaking changes
Future
The following changes are planned for release at some point in the future, but have not been scheduled yet. Typically, these are fields that have been deprecated in the GraphQL API. We will update this page with details of when these changes will be completed.
- The
addressinput field on input typesUpdateContactDetailsInput,UpdateContactStoreContactDetailsInput,UpdateCeContactStoreContactDetailsInputandUpdateMembershipContactStoreContactDetailsInputhas been deprecated and will be removed in a future release. Please use the newprimaryAddressfield instead. - The field
userAccessRightson object typesEvent,ContactStore,CeContactStoreandMembershipContactStorehas been deprecated and will be removed in a future release. Please use the newaccessRightsfield instead. - The
attachedDocumentIdsinput field on input typeCreatePresentationInputhas been deprecated and will be removed in a future release. Please use the newattachedDocumentsfield instead. - The
attachedDocumentIdsinput field on input typeUpdatePresentationInputhas been deprecated and will be removed in a future release. Please use the newattachedDocumentsfield instead. - The
inputargument on object typeFunctionRegistrationhas been deprecated and will be removed in a future release. Please use the newfilterInputargument instead. - The
inputargument on object typeRegistrationhas been deprecated and will be removed in a future release. Please use the newfilterInputargument instead. - The field
referenceon object typeEventsAirPaymentsPaymentDetailshas been deprecated and will be removed in a future release. Please use the newpaymentIdfield instead. - The field
locationson object typePresentationSetuphas been deprecated and will be removed in a future release. Please use the newsetup.locationsfield instead. - The field
isCompletedon object typeSponsorshipPackageItemhas been deprecated and will be removed in a future release. - The field
nameon object typeSponsorshipPackageItemhas been deprecated and will be removed in a future release. Please use the newinclusion.namefield instead. - The field
valueon object typeSponsorshipPackageItemhas been deprecated and will be removed in a future release. Please use the newinclusion.valuefield instead. - The field
contactIdon object typeCreatePresentationAuthorInputhas been deprecated and will be removed in a future release. Please use the newcontactAuthorfield instead. - The field
contactIdon object typeUpdatePresentationAuthorInputhas been deprecated and will be removed in a future release. Please use the newcontactAuthorfield instead.
Past breaking changes
The following sections list past releases of changes that may have impacted integrated applications.
2025-04-30
- The type for field
SessionBlock.datewill be changedLocalDate!toLocalDate - The type for field
SessionBlock.startwill be changedLocalTime!toLocalTime - The type for field
SessionBlock.endwill be changedLocalTime!toLocalTime
2025-02-25
-
Fix an issue with createContact that allows a Contact to be created when the ID of a Contact Store is passed instead of an Event. Please use the correct mutations for Contact Stores.
If you are working with a Contact Store you will need to replace the existing code of:
mutation CreateContact {
createContact(
input: {
firstName: "John"
lastName: "Smith"
organizationName: "ACME Corporation"
primaryEmail: "jsmith@acme.com"
eventId: "d714ba51-34df-426f-a2d5-6d6ab41e0138"
}
) {
contact {
internalNumber
id
}
}
}
With:
mutation CreateContactStoreContact {
createContactStoreContact(
input: {
firstName: "John"
lastName: "Smith"
organizationName: "ACME Corporation"
primaryEmail: "jsmith@acme.com"
contactStoreId: "d714ba51-34df-426f-a2d5-6d6ab41e0138"
}
) {
contact {
internalNumber
id
}
}
}
-
Fix an issue with updateContactDetails that allows a Contact to be updated when the ID of a Contact Store is passed instead of an Event. Please use the correct mutations for Contact Stores
If you are working with a Contact Store you will need to replace the existing code of:
mutation UpdateContactDetails {
updateContactDetails(
input: {
contactId: "2D18FF0E-8D8A-4B31-A333-56EAAD456FAA"
eventId: "d714ba51-34df-426f-a2d5-6d6ab41e0138"
jobTitle: "VP Marketing"
}
) {
contact {
internalNumber
id
firstName
lastName
jobTitle
organizationName
}
}
}
With:
mutation UpdateContactStoreContactDetails {
updateContactStoreContactDetails(
input: {
contactId: "2D18FF0E-8D8A-4B31-A333-56EAAD456FAA"
contactStoreId: "d714ba51-34df-426f-a2d5-6d6ab41e0138"
jobTitle: "VP Marketing"
}
) {
contact {
internalNumber
id
firstName
lastName
jobTitle
organizationName
}
}
}
-
Fix an issue with updateContactBilling that allows a Contact to be updated when the ID of a Contact Store is passed instead of an Event. Please use the correct mutations for Contact Stores.
If you are working with a Contact Store you will need to replace the existing code of:
mutation UpdateContactBilling {
updateContactBilling(
input: {
contactId: "2D18FF0E-8D8A-4B31-A333-56EAAD456FAA"
eventId: "d714ba51-34df-426f-a2d5-6d6ab41e0138"
firstName: "Jane"
lastName: "White"
organizationName: "ACME Corporation"
email: "jwhite@acme.com"
}
) {
contact {
internalNumber
id
firstName
lastName
jobTitle
organizationName
billing {
id
firstName
lastName
organizationName
email
}
}
}
}
With:
mutation UpdateContactStoreContactBilling {
updateContactStoreContactBilling(
input: {
contactId: "2D18FF0E-8D8A-4B31-A333-56EAAD456FAA"
contactStoreId: "d714ba51-34df-426f-a2d5-6d6ab41e0138"
firstName: "Jane"
lastName: "White"
organizationName: "ACME Corporation"
email: "jwhite@acme.com"
}
) {
contact {
internalNumber
id
firstName
lastName
jobTitle
organizationName
billing {
id
firstName
lastName
organizationName
email
}
}
}
}
- Field
CeContactStore.functionRegistrationswill change type from[FunctionRegistration!]!to[CeContactStoreFunctionRegistration!]!.- - Field
MembershipContactStore.functionRegistrationswill change type from[FunctionRegistration!]!to[MembershipContactStoreFunctionRegistration!]!. - Field
MembershipContactStoreContact.functionRegistrationswill change type from[FunctionRegistration!]!to[MembershipContactStoreFunctionRegistration!]!.
2024-06-07
The following changes are planned for release on 2024-06-05. If your integrated applications use features in this list, we recommend making changes now to avoid any future incompatibility.
- The type for field
InvoiceLineItem.payableItemwill be changedPayableItem!toPayableItem - The type for field
PaymentLineItem.payableItemwill be changedPayableItem!toPayableItem
2024-02-15
- The
limitargument used in various queries to limit the number of items returned will be changed fromPositiveInttoPaginationLimit. This will set a maximum value of2,000forlimit. - Various objects will be renamed:
FindEventContactsInputwill be renamed toFindContactsInput.EventOfficewill be renamed toOffice.EventTextMessagingServicewill be renamed toTextMessagingService.EventEmailMessagingServicewill be renamed toEmailMessagingService.EventOnlinePaymentServiceswill be renamed toOnlinePaymentServices.EventUserAccessRightswill be renamed toUserAccessRights.EventUserwill be renamed toEventsAirUser.EventInvoiceConfigurationwill be renamed toInvoiceConfiguration.
- The input type
FindEventContactsInputused in the queryEvent.contactswill be replaced withContactSearchFilterInputoffering richer ways to filter contacts. This will also remove related typesEventContactsWhere,EventContactsOrderByandEventContactOrderByField. - The
offsetargument used inEvent.contactswill need to be a multiple of thelimitargument, or an error will occur. - The type used for
Contact.websitewill be changed fromURLtoStringto cater for instances where the field in EventsAir is not a well-formed URL. This will also be changed for input types used in contact mutations:CreateContactInput.websiteandUpdateContactDetailsInput.websitewill be changed fromURLtoString.