Hi devs,
If there are specific issues or gaps on the GraphQL API, please post them in this topic, so we can support you with your migration from the REST API.
Hi devs,
If there are specific issues or gaps on the GraphQL API, please post them in this topic, so we can support you with your migration from the REST API.
ProductsCount: (I haven’t confirmed if its been updated in the last couple of months) - it should match all features with products_count.
Product MediaImages: Ability to add new item with set Position. Should also return created_at, updated_at, Position, and linked variant_ids.
I will run more tests soon and add to this thread with my findings.
Hello @Liam-Shopify, I am looking for a replacement for the below REST API that retrieves all article authors.
Since the above is a REST API, it is already deprecated, but I can’t find a direct replacement for this in the GraphQL API explorer. The AI assistant suggests using the get articles GraphQL API (which is paginated) and then extracting the authors out of it - articles - GraphQL Admin.
Please suggest.
order.order_number
not being present in graphql
This is completely blocking us. There is too many code to rewrite and this is just stopping us from doing that and the deadline is approaching
The checkouts
webhooks: Webhooks, whose payloads represents an AbandonedCheckout until they are converted to a real order, do not send the id of the line items(the AbandonedCheckoutLineItem), however this field is newly introduced in the GraphQL admin api: AbandonedCheckoutLineItem - GraphQL Admin
There is a key
property on the line item in the webhook payload but no key field exists on the AbandonedCheckoutLineItem
GraphQL object.
This is a major blocker for us as there is no way to map an AbandonedCheckoutLineItem
from a webhook to its GraphQL equivalent resource- we can uniquely identify an AbandonedCheckoutLineItem
by its unique key
in the webhook but not in its GraphQL resource, and we can only identify AbandonedCheckoutLineItem
s by it’s id
in GraphQL but can not by its key
.
Can we please get the id
of the line item sent along with the webhook, or add the key
field to the GraphQL object, or even better both to make the REST vs GraphQL versions of the object consistent with each other?
Another request- the fulfillment_events
webhooks contain an updated_at
: Webhooks
However I noticed there is no updatedAt
field on the GraphQL resource, only a createdAt
: FulfillmentEvent - GraphQL Admin
I do see the updated_at property is marked as deprecated on the FulfillmentEvent REST resource: FulfillmentEvent - REST however isn’t this not correct as the field is available on the GraphQL admin api? Can we get an updatedAt field on the GraphQL version of the resource as it does seem to be available and sent along in the webhooks?
For the Dispute
/DisputeEvidence
resource, there is a REST admin api endpoint to get the DisputeEvidence’s associated with a Dispute: Dispute Evidence - REST
However I can’t seem to find an equivalent query on the GraphQL admin api side. There is only a query to get a disputeEvidence given its id, disputeEvidence - GraphQL Admin, but none that actually lets you list the DisputeEvidence’s associated to a Dispute. There is a way to query for all Disputes via the shopifyPaymentsAccount query: shopifyPaymentsAccount - GraphQL Admin, but no connection to DisputeEvidence.
Is there a way to fetch the DisputeEvidence for a Dispute?
@Liam-Shopify currently we have the following gaps in GraphQL which we would require to be filled before we move on from the REST API;
REST Object | REST Field | Note |
---|---|---|
User | permissions | Not available even though it is documented. An error is returned when querying this field in GraphQL. |
GiftCard | api_client_id | |
user_id | No longer accessible by public applications | |
line_item_id | ||
Shop | plan_name | Doesn’t exist in GraphQL. DisplayName can be used in GraphQL but not fully consistent with plan_name when shop is Frozen or Cancelled for example |
OrderTransaction | source_name | Docs suggest using Order.source_name but it has a different meaning. |
device_id | ||
payments_refund_attributes.status | ||
location_id | Docs suggest using Order.location but it has a different meaning. | |
message | ||
user_id | No longer accessible by public applications | |
Refund | user_id | No longer accessible by public applications |
Please let us know if you require more info
Similar to @geon, the omission of order.order_number
is a big blocker for us.
In the REST API Refund data, the OrderAdjustments have a field called “kind” (which is now deprecated): Refund - REST
Valid values: shipping_refund
and refund_discrepancy
.
This is no longer present in GraphQL - OrderAdjustment - GraphQL Admin
What would be the correct way to determine if the refund adjustment is related to shipping or not?
EDIT: found the answer, should be inside refundShippingLines now.