API - Create Fulfillment Service - returns empty list without creating

dvpetrenko
Visitor
3 0 0

Hello,

 

We are a fulfillment company and have been using the 'Create a new FulfillmentService' for a while with multiple clients (for each of their stores). Since the migration/update our workflow is to register a new fulfillment service via custom app. Then the fulfillment workflow works as documented. No auth issues.

 

However, it stopped working recently for new clients. All permissions checked for admin API app config. We can still create a new (unneeded, just for testing) fulfillment service for each of our old clients, but not new ones. Same code, same API/version. Below is JSON/endpoint we are posting.

 

Any help would be highly appreciated. Thank you

 

Method: POST

https://*masked*:*masked*@*masked*.myshopify.com/admin/api/2024-01/fulfillment_services.json

{
       "fulfillment_service": {
       "name": "ABC Fulfillment Service",
       "callback_url": "https://www.*masked*.com/Services/InboundServiceShopifyFulfillment/home/orderpost",
       "inventory_management": true,
       "tracking_support": false,
       "requires_shipping_method": false,
       "format": "json",
       "permits_sku_sharing": true
   }
}

 

response is:

{"fulfillment_services":[]}

Replies 2 (2)

dvpetrenko
Visitor
3 0 0

Just noticed that on stores that have been active for longer than a month - this works. New stores however, show the below (attached image). I'm assuming this additional access available is due to the store being in trial period for 1$ a month. Is there any way convert stores to full access our of the paid trial?

 

dvpetrenko_0-1717195529246.png

 

dvpetrenko_1-1717195541869.png

 

 

ShopifyDevSup
Shopify Staff
1415 231 484

Hey @dvpetrenko

 

Thanks for sharing the issue you have encountered and the reason being the merchants don't have access to protected customer data. 

 

As of recent plan changes, Level 2 protected customer data for custom apps in the admin is only available to stores on the Shopify plan and higher. 

 

Since your integration is for multiple merchants using the same code and api version, I would recommend building your app as a public app. This way you can request protected data through the partner dashboard allowing all of your clients to approve this when installing your app, and not be limited by their plan. 

 

This will also ensure your app is in compliance with our API terms of service

 

Hope that helps, 

 

- Kyle G. 

Developer Support @ Shopify
- Was this reply helpful? Click Like to let us know!
- Was your question answered? Mark it as an Accepted Solution
- To learn more visit Shopify.dev or the Shopify Web Design and Development Blog