We’re building a sync that pulls translated product and variant content (titles, descriptions, option names) from Shopify into an external system. We need to run this incrementally — only fetching translations that have changed since the last sync.
The Translation object has an updatedAt field, so the data exists. But we can’t find any way to use it as a filter.
What we’ve tried
-
translations() on HasPublishedTranslations only accepts locale and marketId:
translations(locale: String!, marketId: ID): [Translation!]! -
translatableResources only accepts resourceType and pagination arguments — no date or query filter:
translatableResources(resourceType: TranslatableResourceType!, first: Int, after: String): TranslatableResourceConnection! -
Filtering products(query: “updated_at:>X”) doesn’t work for our case — a translator can update copy without touching the product itself, so those changes are invisible to a product-level watermark.
-
Translation.outdated tells us whether the source content changed after the translation was written — not whether the translation itself was recently updated.
The ask
Is there a query or pattern we’re missing that allows filtering translations by when they were last updated? If not, is this something on the roadmap?