Improved support for syncing external marketing activities and receiving aggregate marketing data
API
Effective January 01, 2024
Action required
We're revamping the External Marketing APIs in the 2024-01 version of the GraphQL Admin API.
Breaking changes
- The
channel
field in marketingActivityCreateExternal and marketingActivityUpdateExternal has been renamed tomarketingChannelType
. utcOffset
andisCumulative
are now required fields and thefetchedAt
field has been removed from marketingEngagementInput.- The
utm
field has been deprecated from MarketingActivityUpdateExternalInput.
Improvements on the creation of marketing activities
- marketingActivityUpsertExternal can be used to sync externally managed activities without having to keep track of Shopify IDs.
- marketingActivityCreateExternal or marketingActivityUpsertExternal can be used to create a hierarchy of activities. Activities can be created to represent ads, ad groups, or campaigns.
- Bulk mutation support has been added for marketingActivityUpsertExternal. Learn more about bulk mutations on Shopify.dev.
Now supporting the deletion of marketing activities
- marketingActivityDeleteExternal can be used to delete a single external marketing activity.
- marketingActivitiesDeleteAllExternal can be used to enqueue a job to bulk delete all external marketing activities. This can be used to cleanup data if a store owner revokes permission to sync data to Shopify.
Improved support for syncing aggregate data
- The
remoteId
can be used to reference a marketing activity in marketingEngagementCreate. - marketingEngagementCreate can be used to sync aggregate data at the activity level and at the channel level.
- Bulk mutation support has been added for marketingEngagementCreate. Learn more about bulk mutations on Shopify.dev.
- marketingEngagementsDelete can be used to enqueue a job to delete all channel-level data that was sent through marketingEngagementCreate. This can be used to cleanup data if a store owner revokes permission to sync data to Shopify.