Shopify / Shopify/shopify-api-php
Shopify\Webhooks\Topics is missing 38 topics from the WebhookSubscriptionTopic enum (through 2026-01/2026-07)
Nobody has claimed this yet.
- Dominant language
- PHP
- Stars
- 473
- Forks
- 193
- Avg merge
- 5h 8m
- Merged PRs (30d)
- 1
Description
Issue summary
Shopify\Webhooks\Topics currently exposes 188 constants. The Admin GraphQL
WebhookSubscriptionTopic enum (API version 2026-07) defines 32 topics that have
no corresponding constant in the class.
Missing topics:
APP_SCOPES_UPDATECUSTOMERS_PURCHASING_SUMMARYCUSTOMERS_WHATS_APP_MARKETING_CONSENT_UPDATECUSTOMER_JOINED_SEGMENTCUSTOMER_LEFT_SEGMENTDELIVERY_PROMISE_SETTINGS_UPDATEFULFILLMENT_HOLDS_ADDEDFULFILLMENT_HOLDS_RELEASEDFULFILLMENT_ORDERS_HOLD_RELEASEDFULFILLMENT_ORDERS_MANUALLY_REPORTED_PROGRESS_STOPPEDFULFILLMENT_ORDERS_PROGRESS_REPORTEDINVENTORY_SHIPMENTS_ADD_ITEMSINVENTORY_SHIPMENTS_CREATEINVENTORY_SHIPMENTS_DELETEINVENTORY_SHIPMENTS_MARK_IN_TRANSITINVENTORY_SHIPMENTS_RECEIVE_ITEMSINVENTORY_SHIPMENTS_REMOVE_ITEMSINVENTORY_SHIPMENTS_UPDATE_ITEM_QUANTITIESINVENTORY_SHIPMENTS_UPDATE_TRACKINGINVENTORY_TRANSFERS_ADD_ITEMSINVENTORY_TRANSFERS_CANCELINVENTORY_TRANSFERS_COMPLETEINVENTORY_TRANSFERS_READY_TO_SHIPINVENTORY_TRANSFERS_REMOVE_ITEMSINVENTORY_TRANSFERS_UPDATEDINVENTORY_TRANSFERS_UPDATE_ITEM_QUANTITIESLOCALES_DESTROYMARKETS_BACKUP_REGION_UPDATEMETAFIELD_DEFINITIONS_CREATEMETAFIELD_DEFINITIONS_DELETEMETAFIELD_DEFINITIONS_UPDATEORDERS_LINK_REQUESTED
Expected behavior
Topics lists these topics as constants, so apps can subscribe with
Topics::METAFIELD_DEFINITIONS_CREATE rather than a raw string.
Actual behavior
The constants don't exist, so the raw string has to be passed to
Registry::register() / Registry::addHandler(). This still works — the docs
note the class "may not be completely up to date at all times" — but it loses
the discoverability and typo-safety the class exists to provide.
Source
- Topic list: https://shopify.dev/docs/api/webhooks/latest?reference=graphql
- Enum: https://shopify.dev/docs/api/admin-graphql/latest/enums/WebhookSubscriptionTopic
Notes
The enum additionally contains FINANCE_APP_STAFF_MEMBER_{DELETE,GRANT,REVOKE,UPDATE},
FINANCE_KYC_INFORMATION_UPDATE and RETURNS_PROCESS, which are not listed on the
webhooks topic page. Happy to include or omit those depending on maintainer preference.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by inspecting Shopify\Webhooks\Topics and compare its constants with the listed WebhookSubscriptionTopic enum entries. Add the missing topics, confirming whether the additional finance and returns entries should be included. Done means the constants are available for Registry::register() and Registry::addHandler() instead of requiring raw strings.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- php
- Domain
- api
- Issue type
- Feature
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 78/100