--- title: FulfillmentRequest description: Manage the fulfillment request flow of fulfillment orders assigned to fulfillment services. api_version: 2025-10 api_name: admin-rest api_type: rest source_url: html: https://shopify.dev/docs/api/admin-rest/latest/resources/fulfillmentrequest md: https://shopify.dev/docs/api/admin-rest/latest/resources/fulfillmentrequest.md --- ![](https://shopify.dev/images/logos/GraphQL.svg)![](https://shopify.dev/images/logos/GraphQL-dark.svg) The REST Admin API is a legacy API as of October 1, 2024. Starting April 1, 2025, all new public apps must be built exclusively with the [GraphQL Admin API](https://shopify.dev/docs/api/admin-graphql). For details and migration steps, visit our [migration guide](https://shopify.dev/docs/apps/build/graphql/migrate). # Fulfillment​Request Multiple access scopes needed — refer to each endpoint for access scope requirements. The `FulfillmentRequest` resource represents a fulfillment request made by the merchant or an order management app to a [fulfillment service](https://shopify.dev/docs/admin-api/rest/reference/shipping-and-fulfillment/fulfillmentservice) for a [fulfillment order](https://shopify.dev/docs/admin-api/rest/reference/shipping-and-fulfillment/fulfillmentorder). A fulfillment service can accept or reject the fulfillment request. ## Terminating a fulfillment request A fulfillment service can stop fulfilling an accepted fulfillment request if they choose [closing the fulfillment order as incomplete](https://shopify.dev/api/admin-rest/latest/resources/fulfillmentorder#post-fulfillment-orders-fulfillment-order-id-close). The fulfillment order can be partially fulfilled when a fulfillment service chooses to stop the fulfillment. The merchant or an order management app can notify the fulfillment service to cancel an accepted fulfillment request by sending a [cancellation request](https://shopify.dev/api/admin-rest/latest/resources/cancellationrequest#post-fulfillment-orders-fulfillment-order-id-cancellation-request). The fulfillment service can accept or reject the cancellation request. The fulfillment order can be partially fulfilled at this time. The merchant or an order management app can also [cancel](https://shopify.dev/api/admin-rest/latest/resources/fulfillmentorder#post-fulfillment-orders-fulfillment-order-id-cancel) a fulfillment order. Calling the `cancel` endpoint results in the fulfilment order being cancelled within Shopify. This change will not be communicated to the fulfilment service. If the intention is for a fulfilment service to halt fulfilment activity, a [cancellation request](https://shopify.dev/api/admin-rest/latest/resources/cancellationrequest#post-fulfillment-orders-fulfillment-order-id-cancellation-request) should be sent to the fulfilment service instead, as described above. ## Retrieving fulfillment request details The `FulfillmentOrder` resource and the `merchant_requests` field can be used to retrieve the merchant requests which have been made. The overall status of these requests is also available using the `request_status` field of the fulfillment order. To learn more about the fulfillment request process in the fulfillment workflow, refer to [Manage fulfillments as a fulfillment service app](https://shopify.dev/apps/fulfillment/fulfillment-service-apps/manage-fulfillments) guide. \# ## Endpoints * [post](https://shopify.dev/docs/api/admin-rest/latest/resources/fulfillmentrequest#post-fulfillment-orders-fulfillment-order-id-fulfillment-request) [/admin/api/latest/fulfillment\_​orders/{fulfillment\_​order\_​id}/fulfillment\_​request.​json](https://shopify.dev/docs/api/admin-rest/latest/resources/fulfillmentrequest#post-fulfillment-orders-fulfillment-order-id-fulfillment-request) Sends a fulfillment request [![](https://shopify.dev/images/logos/GraphQL.svg)![](https://shopify.dev/images/logos/GraphQL-dark.svg)](https://shopify.dev/docs/api/admin-graphql/latest/mutations/fulfillmentOrderSubmitFulfillmentRequest?example=sends-a-fulfillment-request) [fulfillmentOrderSubmitFulfillmentRequest](https://shopify.dev/docs/api/admin-graphql/latest/mutations/fulfillmentOrderSubmitFulfillmentRequest?example=sends-a-fulfillment-request) * [post](https://shopify.dev/docs/api/admin-rest/latest/resources/fulfillmentrequest#post-fulfillment-orders-fulfillment-order-id-fulfillment-request-accept) [/admin/api/latest/fulfillment\_​orders/{fulfillment\_​order\_​id}/fulfillment\_​request/accept.​json](https://shopify.dev/docs/api/admin-rest/latest/resources/fulfillmentrequest#post-fulfillment-orders-fulfillment-order-id-fulfillment-request-accept) Accepts a fulfillment request [![](https://shopify.dev/images/logos/GraphQL.svg)![](https://shopify.dev/images/logos/GraphQL-dark.svg)](https://shopify.dev/docs/api/admin-graphql/latest/mutations/fulfillmentOrderAcceptFulfillmentRequest?example=accepts-a-fulfillment-request) [fulfillmentOrderAcceptFulfillmentRequest](https://shopify.dev/docs/api/admin-graphql/latest/mutations/fulfillmentOrderAcceptFulfillmentRequest?example=accepts-a-fulfillment-request) * [post](https://shopify.dev/docs/api/admin-rest/latest/resources/fulfillmentrequest#post-fulfillment-orders-fulfillment-order-id-fulfillment-request-reject) [/admin/api/latest/fulfillment\_​orders/{fulfillment\_​order\_​id}/fulfillment\_​request/reject.​json](https://shopify.dev/docs/api/admin-rest/latest/resources/fulfillmentrequest#post-fulfillment-orders-fulfillment-order-id-fulfillment-request-reject) Rejects a fulfillment request [![](https://shopify.dev/images/logos/GraphQL.svg)![](https://shopify.dev/images/logos/GraphQL-dark.svg)](https://shopify.dev/docs/api/admin-graphql/latest/mutations/fulfillmentOrderRejectFulfillmentRequest?example=rejects-a-fulfillment-request) [fulfillmentOrderRejectFulfillmentRequest](https://shopify.dev/docs/api/admin-graphql/latest/mutations/fulfillmentOrderRejectFulfillmentRequest?example=rejects-a-fulfillment-request) *** ## The FulfillmentRequest resource ### Properties *** message -> [![](https://shopify.dev/images/logos/GraphQL.svg)![](https://shopify.dev/images/logos/GraphQL-dark.svg)](https://shopify.dev/docs/api/admin-graphql/latest/objects/FulfillmentOrderMerchantRequest#field-FulfillmentOrderMerchantRequest.fields.message) [message](https://shopify.dev/docs/api/admin-graphql/latest/objects/FulfillmentOrderMerchantRequest#field-FulfillmentOrderMerchantRequest.fields.message) A message for the fulfillment request. *** sent\_at -> [![](https://shopify.dev/images/logos/GraphQL.svg)![](https://shopify.dev/images/logos/GraphQL-dark.svg)](https://shopify.dev/docs/api/admin-graphql/latest/objects/FulfillmentOrderMerchantRequest#field-FulfillmentOrderMerchantRequest.fields.sentAt) [sentAt](https://shopify.dev/docs/api/admin-graphql/latest/objects/FulfillmentOrderMerchantRequest#field-FulfillmentOrderMerchantRequest.fields.sentAt) The timestamp when the request was made. *** response\_data -> [![](https://shopify.dev/images/logos/GraphQL.svg)![](https://shopify.dev/images/logos/GraphQL-dark.svg)](https://shopify.dev/docs/api/admin-graphql/latest/objects/FulfillmentOrderMerchantRequest#field-FulfillmentOrderMerchantRequest.fields.responseData) [responseData](https://shopify.dev/docs/api/admin-graphql/latest/objects/FulfillmentOrderMerchantRequest#field-FulfillmentOrderMerchantRequest.fields.responseData) The response from the fulfillment service. *** request\_options -> [![](https://shopify.dev/images/logos/GraphQL.svg)![](https://shopify.dev/images/logos/GraphQL-dark.svg)](https://shopify.dev/docs/api/admin-graphql/latest/objects/FulfillmentOrderMerchantRequest#field-FulfillmentOrderMerchantRequest.fields.requestOptions) [requestOptions](https://shopify.dev/docs/api/admin-graphql/latest/objects/FulfillmentOrderMerchantRequest#field-FulfillmentOrderMerchantRequest.fields.requestOptions) Whether to notify the customer about the fulfillment request. *** kind -> [![](https://shopify.dev/images/logos/GraphQL.svg)![](https://shopify.dev/images/logos/GraphQL-dark.svg)](https://shopify.dev/docs/api/admin-graphql/latest/objects/FulfillmentOrderMerchantRequest#field-FulfillmentOrderMerchantRequest.fields.kind) [kind](https://shopify.dev/docs/api/admin-graphql/latest/objects/FulfillmentOrderMerchantRequest#field-FulfillmentOrderMerchantRequest.fields.kind) The kind of request made. *** {} ## The FulfillmentRequest resource ```json { "message": "The optional message that the merchant included in the request.", "sent_at": "2024-04-01T13:38:11-04:00", "response_data": { "response": {} }, "request_options": { "notify_customer": true }, "kind": "fulfillment_request" } ``` *** ## postSends a fulfillment request [![](https://shopify.dev/images/logos/GraphQL.svg)![](https://shopify.dev/images/logos/GraphQL-dark.svg)](https://shopify.dev/docs/api/admin-graphql/latest/mutations/fulfillmentOrderSubmitFulfillmentRequest?example=sends-a-fulfillment-request) [fulfillmentOrderSubmitFulfillmentRequest](https://shopify.dev/docs/api/admin-graphql/latest/mutations/fulfillmentOrderSubmitFulfillmentRequest?example=sends-a-fulfillment-request) Requires `third_party_fulfillment_orders` access scope. Sends a fulfillment request to the fulfillment service of a fulfillment order. ### Parameters *** api\_version string required *** fulfillment\_order\_id string required *** fulfillment\_order\_line\_items The fulfillment order line items to be requested for fulfillment. If left blank, all line items of the fulfillment order are requested for fulfillment. *** message An optional message for the fulfillment request. *** notify\_customer Whether to notify the customer about the fulfillment request. *** ### Examples Sends a fulfillment request to the fulfillment service for all line items on the fulfillment order if fulfillment\_order\_line\_items is left blank Path parameters fulfillment\_​order\_​id=​1046000809 string required Request body fulfillment\_​request​ Fulfillment\_request resource Show fulfillment\_request properties fulfillment\_​request.message:​"Fulfill this ASAP please." A message for the fulfillment request. Sends a fulfillment request to the fulfillment service of a fulfillment order for the specified line items Path parameters fulfillment\_​order\_​id=​1046000805 string required Request body fulfillment\_​request​ Fulfillment\_request resource Show fulfillment\_request properties fulfillment\_​request.message:​"Fulfill this ASAP please." A message for the fulfillment request. post ## /admin/api/2025-10/fulfillment\_​orders/1046000809/fulfillment\_​request.​json ```bash curl -d '{"fulfillment_request":{"message":"Fulfill this ASAP please."}}' \ -X POST "https://your-development-store.myshopify.com/admin/api/2025-10/fulfillment_orders/1046000809/fulfillment_request.json" \ -H "X-Shopify-Access-Token: {access_token}" \ -H "Content-Type: application/json" ``` {} ## Response JSON ```json HTTP/1.1 200 OK { "original_fulfillment_order": { "id": 1046000809, "created_at": "2025-10-01T15:11:25-04:00", "updated_at": "2025-10-01T15:11:26-04:00", "shop_id": 548380009, "order_id": 450789469, "assigned_location_id": 24826418, "request_status": "submitted", "status": "open", "fulfill_at": null, "fulfill_by": null, "supported_actions": [ "cancel_fulfillment_order" ], "destination": { "id": 1042572141, "address1": "Chestnut Street 92", "address2": "", "city": "Louisville", "company": null, "country": "United States", "email": "bob.norman@mail.example.com", "first_name": "Bob", "last_name": "Norman", "phone": "+1(502)-459-2181", "province": "Kentucky", "zip": "40202" }, "origin": { "address1": null, "address2": null, "city": null, "country_code": "DE", "location_id": 24826418, ``` ### examples * #### Sends a fulfillment request to the fulfillment service for all line items on the fulfillment order if fulfillment\_order\_line\_items is left blank ##### ```curl curl -d '{"fulfillment_request":{"message":"Fulfill this ASAP please."}}' \ -X POST "https://your-development-store.myshopify.com/admin/api/2025-10/fulfillment_orders/1046000809/fulfillment_request.json" \ -H "X-Shopify-Access-Token: {access_token}" \ -H "Content-Type: application/json" ``` ##### ```remix const { admin, session } = await authenticate.admin(request); const fulfillment_request = new admin.rest.resources.FulfillmentRequest({session: session}); fulfillment_request.fulfillment_order_id = 1046000809; fulfillment_request.message = "Fulfill this ASAP please."; await fulfillment_request.save({ update: true, }); ``` ##### ```ruby # Session is activated via Authentication test_session = ShopifyAPI::Context.active_session fulfillment_request = ShopifyAPI::FulfillmentRequest.new(session: test_session) fulfillment_request.fulfillment_order_id = 1046000809 fulfillment_request.message = "Fulfill this ASAP please." fulfillment_request.save! ``` ##### ```node // Session is built by the OAuth process const fulfillment_request = new shopify.rest.FulfillmentRequest({session: session}); fulfillment_request.fulfillment_order_id = 1046000809; fulfillment_request.message = "Fulfill this ASAP please."; await fulfillment_request.save({ update: true, }); ``` #### response ```json HTTP/1.1 200 OK{"original_fulfillment_order":{"id":1046000809,"created_at":"2025-10-01T15:11:25-04:00","updated_at":"2025-10-01T15:11:26-04:00","shop_id":548380009,"order_id":450789469,"assigned_location_id":24826418,"request_status":"submitted","status":"open","fulfill_at":null,"fulfill_by":null,"supported_actions":["cancel_fulfillment_order"],"destination":{"id":1042572141,"address1":"Chestnut Street 92","address2":"","city":"Louisville","company":null,"country":"United States","email":"bob.norman@mail.example.com","first_name":"Bob","last_name":"Norman","phone":"+1(502)-459-2181","province":"Kentucky","zip":"40202"},"origin":{"address1":null,"address2":null,"city":null,"country_code":"DE","location_id":24826418,"name":"Apple Api Shipwire","phone":null,"province":null,"zip":null},"line_items":[{"id":1072503310,"shop_id":548380009,"fulfillment_order_id":1046000809,"quantity":1,"line_item_id":466157049,"inventory_item_id":39072856,"fulfillable_quantity":1,"variant_id":39072856},{"id":1072503311,"shop_id":548380009,"fulfillment_order_id":1046000809,"quantity":1,"line_item_id":518995019,"inventory_item_id":49148385,"fulfillable_quantity":1,"variant_id":49148385},{"id":1072503312,"shop_id":548380009,"fulfillment_order_id":1046000809,"quantity":1,"line_item_id":703073504,"inventory_item_id":457924702,"fulfillable_quantity":1,"variant_id":457924702}],"outgoing_requests":[{"message":"Fulfill this ASAP please.","request_options":{"notify_customer":false},"sent_at":"2025-10-01T15:11:26-04:00","kind":"fulfillment_request"}],"international_duties":null,"fulfillment_holds":[],"delivery_method":{"id":989232624,"method_type":"shipping","min_delivery_date_time":null,"max_delivery_date_time":null,"additional_information":{"phone":null,"instructions":null,"failed_carriers":null,"pickup_point_id":null},"service_code":null,"detailed_branded_promise":null,"source_reference":null,"presented_name":"Expedited Shipping"}},"submitted_fulfillment_order":{"id":1046000809,"created_at":"2025-10-01T15:11:25-04:00","updated_at":"2025-10-01T15:11:26-04:00","shop_id":548380009,"order_id":450789469,"assigned_location_id":24826418,"request_status":"submitted","status":"open","fulfill_at":null,"fulfill_by":null,"supported_actions":["cancel_fulfillment_order"],"destination":{"id":1042572141,"address1":"Chestnut Street 92","address2":"","city":"Louisville","company":null,"country":"United States","email":"bob.norman@mail.example.com","first_name":"Bob","last_name":"Norman","phone":"+1(502)-459-2181","province":"Kentucky","zip":"40202"},"origin":{"address1":null,"address2":null,"city":null,"country_code":"DE","location_id":24826418,"name":"Apple Api Shipwire","phone":null,"province":null,"zip":null},"line_items":[{"id":1072503310,"shop_id":548380009,"fulfillment_order_id":1046000809,"quantity":1,"line_item_id":466157049,"inventory_item_id":39072856,"fulfillable_quantity":1,"variant_id":39072856},{"id":1072503311,"shop_id":548380009,"fulfillment_order_id":1046000809,"quantity":1,"line_item_id":518995019,"inventory_item_id":49148385,"fulfillable_quantity":1,"variant_id":49148385},{"id":1072503312,"shop_id":548380009,"fulfillment_order_id":1046000809,"quantity":1,"line_item_id":703073504,"inventory_item_id":457924702,"fulfillable_quantity":1,"variant_id":457924702}],"outgoing_requests":[{"message":"Fulfill this ASAP please.","request_options":{"notify_customer":false},"sent_at":"2025-10-01T15:11:26-04:00","kind":"fulfillment_request"}],"international_duties":null,"fulfillment_holds":[],"delivery_method":{"id":989232624,"method_type":"shipping","min_delivery_date_time":null,"max_delivery_date_time":null,"additional_information":{"phone":null,"instructions":null,"failed_carriers":null,"pickup_point_id":null},"service_code":null,"detailed_branded_promise":null,"source_reference":null,"presented_name":"Expedited Shipping"}},"unsubmitted_fulfillment_order":null} ``` * #### Sends a fulfillment request to the fulfillment service of a fulfillment order for the specified line items ##### ```curl curl -d '{"fulfillment_request":{"message":"Fulfill this ASAP please.","fulfillment_order_line_items":[{"id":1072503301,"quantity":1},{"id":1072503302,"quantity":1}],"notify_customer":true}}' \ -X POST "https://your-development-store.myshopify.com/admin/api/2025-10/fulfillment_orders/1046000805/fulfillment_request.json" \ -H "X-Shopify-Access-Token: {access_token}" \ -H "Content-Type: application/json" ``` ##### ```remix const { admin, session } = await authenticate.admin(request); const fulfillment_request = new admin.rest.resources.FulfillmentRequest({session: session}); fulfillment_request.fulfillment_order_id = 1046000805; fulfillment_request.message = "Fulfill this ASAP please."; fulfillment_request.fulfillment_order_line_items = [ { "id": 1072503301, "quantity": 1 }, { "id": 1072503302, "quantity": 1 } ]; fulfillment_request.notify_customer = true; await fulfillment_request.save({ update: true, }); ``` ##### ```ruby # Session is activated via Authentication test_session = ShopifyAPI::Context.active_session fulfillment_request = ShopifyAPI::FulfillmentRequest.new(session: test_session) fulfillment_request.fulfillment_order_id = 1046000805 fulfillment_request.message = "Fulfill this ASAP please." fulfillment_request.fulfillment_order_line_items = [ { "id" => 1072503301, "quantity" => 1 }, { "id" => 1072503302, "quantity" => 1 } ] fulfillment_request.notify_customer = true fulfillment_request.save! ``` ##### ```node // Session is built by the OAuth process const fulfillment_request = new shopify.rest.FulfillmentRequest({session: session}); fulfillment_request.fulfillment_order_id = 1046000805; fulfillment_request.message = "Fulfill this ASAP please."; fulfillment_request.fulfillment_order_line_items = [ { "id": 1072503301, "quantity": 1 }, { "id": 1072503302, "quantity": 1 } ]; fulfillment_request.notify_customer = true; await fulfillment_request.save({ update: true, }); ``` #### response ```json HTTP/1.1 200 OK{"original_fulfillment_order":{"id":1046000805,"created_at":"2025-10-01T15:11:20-04:00","updated_at":"2025-10-01T15:11:21-04:00","shop_id":548380009,"order_id":450789469,"assigned_location_id":24826418,"request_status":"submitted","status":"open","fulfill_at":null,"fulfill_by":null,"supported_actions":["cancel_fulfillment_order"],"destination":{"id":1042572137,"address1":"Chestnut Street 92","address2":"","city":"Louisville","company":null,"country":"United States","email":"bob.norman@mail.example.com","first_name":"Bob","last_name":"Norman","phone":"+1(502)-459-2181","province":"Kentucky","zip":"40202"},"origin":{"address1":null,"address2":null,"city":null,"country_code":"DE","location_id":24826418,"name":"Apple Api Shipwire","phone":null,"province":null,"zip":null},"line_items":[{"id":1072503301,"shop_id":548380009,"fulfillment_order_id":1046000805,"quantity":1,"line_item_id":466157049,"inventory_item_id":39072856,"fulfillable_quantity":1,"variant_id":39072856},{"id":1072503302,"shop_id":548380009,"fulfillment_order_id":1046000805,"quantity":1,"line_item_id":518995019,"inventory_item_id":49148385,"fulfillable_quantity":1,"variant_id":49148385}],"outgoing_requests":[{"message":"Fulfill this ASAP please.","request_options":{"notify_customer":true},"sent_at":"2025-10-01T15:11:21-04:00","kind":"fulfillment_request"}],"international_duties":null,"fulfillment_holds":[],"delivery_method":{"id":989232620,"method_type":"shipping","min_delivery_date_time":null,"max_delivery_date_time":null,"additional_information":{"phone":null,"instructions":null,"failed_carriers":null,"pickup_point_id":null},"service_code":null,"detailed_branded_promise":null,"source_reference":null,"presented_name":"Expedited Shipping"}},"submitted_fulfillment_order":{"id":1046000805,"created_at":"2025-10-01T15:11:20-04:00","updated_at":"2025-10-01T15:11:21-04:00","shop_id":548380009,"order_id":450789469,"assigned_location_id":24826418,"request_status":"submitted","status":"open","fulfill_at":null,"fulfill_by":null,"supported_actions":["cancel_fulfillment_order"],"destination":{"id":1042572137,"address1":"Chestnut Street 92","address2":"","city":"Louisville","company":null,"country":"United States","email":"bob.norman@mail.example.com","first_name":"Bob","last_name":"Norman","phone":"+1(502)-459-2181","province":"Kentucky","zip":"40202"},"origin":{"address1":null,"address2":null,"city":null,"country_code":"DE","location_id":24826418,"name":"Apple Api Shipwire","phone":null,"province":null,"zip":null},"line_items":[{"id":1072503301,"shop_id":548380009,"fulfillment_order_id":1046000805,"quantity":1,"line_item_id":466157049,"inventory_item_id":39072856,"fulfillable_quantity":1,"variant_id":39072856},{"id":1072503302,"shop_id":548380009,"fulfillment_order_id":1046000805,"quantity":1,"line_item_id":518995019,"inventory_item_id":49148385,"fulfillable_quantity":1,"variant_id":49148385}],"outgoing_requests":[{"message":"Fulfill this ASAP please.","request_options":{"notify_customer":true},"sent_at":"2025-10-01T15:11:21-04:00","kind":"fulfillment_request"}],"international_duties":null,"fulfillment_holds":[],"delivery_method":{"id":989232620,"method_type":"shipping","min_delivery_date_time":null,"max_delivery_date_time":null,"additional_information":{"phone":null,"instructions":null,"failed_carriers":null,"pickup_point_id":null},"service_code":null,"detailed_branded_promise":null,"source_reference":null,"presented_name":"Expedited Shipping"}},"unsubmitted_fulfillment_order":{"id":1046000806,"created_at":"2025-10-01T15:11:21-04:00","updated_at":"2025-10-01T15:11:21-04:00","shop_id":548380009,"order_id":450789469,"assigned_location_id":24826418,"request_status":"unsubmitted","status":"open","fulfill_at":null,"fulfill_by":null,"supported_actions":["request_fulfillment","create_fulfillment","hold","merge"],"destination":{"id":1042572138,"address1":"Chestnut Street 92","address2":"","city":"Louisville","company":null,"country":"United States","email":"bob.norman@mail.example.com","first_name":"Bob","last_name":"Norman","phone":"+1(502)-459-2181","province":"Kentucky","zip":"40202"},"origin":{"address1":null,"address2":null,"city":null,"country_code":"DE","location_id":24826418,"name":"Apple Api Shipwire","phone":null,"province":null,"zip":null},"line_items":[{"id":1072503303,"shop_id":548380009,"fulfillment_order_id":1046000806,"quantity":1,"line_item_id":703073504,"inventory_item_id":457924702,"fulfillable_quantity":1,"variant_id":457924702}],"outgoing_requests":[],"international_duties":null,"fulfillment_holds":[],"delivery_method":{"id":989232621,"method_type":"shipping","min_delivery_date_time":null,"max_delivery_date_time":null,"additional_information":{"phone":null,"instructions":null,"failed_carriers":null,"pickup_point_id":null},"service_code":null,"detailed_branded_promise":null,"source_reference":null,"presented_name":"Expedited Shipping"}}} ``` *** ## postAccepts a fulfillment request [![](https://shopify.dev/images/logos/GraphQL.svg)![](https://shopify.dev/images/logos/GraphQL-dark.svg)](https://shopify.dev/docs/api/admin-graphql/latest/mutations/fulfillmentOrderAcceptFulfillmentRequest?example=accepts-a-fulfillment-request) [fulfillmentOrderAcceptFulfillmentRequest](https://shopify.dev/docs/api/admin-graphql/latest/mutations/fulfillmentOrderAcceptFulfillmentRequest?example=accepts-a-fulfillment-request) Requires `assigned_fulfillment_orders` access scope. Accepts a fulfillment request sent to a fulfillment service for a fulfillment order. ### Parameters *** api\_version string required *** fulfillment\_order\_id string required *** message An optional reason for accepting the fulfillment request. *** ### Examples Accepts a fulfillment request sent to a fulfillment service and updates the fulfillment order Path parameters fulfillment\_​order\_​id=​1046000807 string required Request body fulfillment\_​request​ Fulfillment\_request resource Show fulfillment\_request properties fulfillment\_​request.message:​"We will start processing your fulfillment on the next business day." A message for the fulfillment request. post ## /admin/api/2025-10/fulfillment\_​orders/1046000807/fulfillment\_​request/accept.​json ```bash curl -d '{"fulfillment_request":{"message":"We will start processing your fulfillment on the next business day."}}' \ -X POST "https://your-development-store.myshopify.com/admin/api/2025-10/fulfillment_orders/1046000807/fulfillment_request/accept.json" \ -H "X-Shopify-Access-Token: {access_token}" \ -H "Content-Type: application/json" ``` {} ## Response JSON ```json HTTP/1.1 200 OK { "fulfillment_order": { "id": 1046000807, "created_at": "2025-10-01T15:11:21-04:00", "updated_at": "2025-10-01T15:11:22-04:00", "shop_id": 548380009, "order_id": 450789469, "assigned_location_id": 24826418, "request_status": "accepted", "status": "in_progress", "fulfill_at": null, "fulfill_by": null, "supported_actions": [ "create_fulfillment", "request_cancellation" ], "destination": { "id": 1042572139, "address1": "Chestnut Street 92", "address2": "", "city": "Louisville", "company": null, "country": "United States", "email": "bob.norman@mail.example.com", "first_name": "Bob", "last_name": "Norman", "phone": "+1(502)-459-2181", "province": "Kentucky", "zip": "40202" }, "origin": { "address1": null, "address2": null, "city": null, "country_code": "DE", "location_id": 24826418, "name": "Apple Api Shipwire", "phone": null, "province": null, "zip": null }, "line_items": [ { "id": 1072503304, "shop_id": 548380009, "fulfillment_order_id": 1046000807, "quantity": 1, "line_item_id": 466157049, "inventory_item_id": 39072856, "fulfillable_quantity": 1, "variant_id": 39072856 }, { "id": 1072503305, "shop_id": 548380009, "fulfillment_order_id": 1046000807, "quantity": 1, "line_item_id": 518995019, "inventory_item_id": 49148385, "fulfillable_quantity": 1, "variant_id": 49148385 }, { "id": 1072503306, "shop_id": 548380009, "fulfillment_order_id": 1046000807, "quantity": 1, "line_item_id": 703073504, "inventory_item_id": 457924702, "fulfillable_quantity": 1, "variant_id": 457924702 } ], "outgoing_requests": [], "international_duties": null, "fulfillment_holds": [], "delivery_method": { "id": 989232622, "method_type": "shipping", "min_delivery_date_time": null, "max_delivery_date_time": null, "additional_information": { "phone": null, "instructions": null, "failed_carriers": null, "pickup_point_id": null }, "service_code": null, "detailed_branded_promise": null, "source_reference": null, "presented_name": "Expedited Shipping" } } } ``` ### examples * #### Accepts a fulfillment request sent to a fulfillment service and updates the fulfillment order ##### ```curl curl -d '{"fulfillment_request":{"message":"We will start processing your fulfillment on the next business day."}}' \ -X POST "https://your-development-store.myshopify.com/admin/api/2025-10/fulfillment_orders/1046000807/fulfillment_request/accept.json" \ -H "X-Shopify-Access-Token: {access_token}" \ -H "Content-Type: application/json" ``` ##### ```remix const { admin, session } = await authenticate.admin(request); const fulfillment_request = new admin.rest.resources.FulfillmentRequest({session: session}); fulfillment_request.fulfillment_order_id = 1046000807; await fulfillment_request.accept({ body: {"fulfillment_request": {"message": "We will start processing your fulfillment on the next business day."}}, }); ``` ##### ```ruby # Session is activated via Authentication test_session = ShopifyAPI::Context.active_session fulfillment_request = ShopifyAPI::FulfillmentRequest.new(session: test_session) fulfillment_request.fulfillment_order_id = 1046000807 fulfillment_request.accept( session: test_session, body: {"fulfillment_request" => {"message" => "We will start processing your fulfillment on the next business day."}}, ) ``` ##### ```node // Session is built by the OAuth process const fulfillment_request = new shopify.rest.FulfillmentRequest({session: session}); fulfillment_request.fulfillment_order_id = 1046000807; await fulfillment_request.accept({ body: {"fulfillment_request": {"message": "We will start processing your fulfillment on the next business day."}}, }); ``` #### response ```json HTTP/1.1 200 OK{"fulfillment_order":{"id":1046000807,"created_at":"2025-10-01T15:11:21-04:00","updated_at":"2025-10-01T15:11:22-04:00","shop_id":548380009,"order_id":450789469,"assigned_location_id":24826418,"request_status":"accepted","status":"in_progress","fulfill_at":null,"fulfill_by":null,"supported_actions":["create_fulfillment","request_cancellation"],"destination":{"id":1042572139,"address1":"Chestnut Street 92","address2":"","city":"Louisville","company":null,"country":"United States","email":"bob.norman@mail.example.com","first_name":"Bob","last_name":"Norman","phone":"+1(502)-459-2181","province":"Kentucky","zip":"40202"},"origin":{"address1":null,"address2":null,"city":null,"country_code":"DE","location_id":24826418,"name":"Apple Api Shipwire","phone":null,"province":null,"zip":null},"line_items":[{"id":1072503304,"shop_id":548380009,"fulfillment_order_id":1046000807,"quantity":1,"line_item_id":466157049,"inventory_item_id":39072856,"fulfillable_quantity":1,"variant_id":39072856},{"id":1072503305,"shop_id":548380009,"fulfillment_order_id":1046000807,"quantity":1,"line_item_id":518995019,"inventory_item_id":49148385,"fulfillable_quantity":1,"variant_id":49148385},{"id":1072503306,"shop_id":548380009,"fulfillment_order_id":1046000807,"quantity":1,"line_item_id":703073504,"inventory_item_id":457924702,"fulfillable_quantity":1,"variant_id":457924702}],"outgoing_requests":[],"international_duties":null,"fulfillment_holds":[],"delivery_method":{"id":989232622,"method_type":"shipping","min_delivery_date_time":null,"max_delivery_date_time":null,"additional_information":{"phone":null,"instructions":null,"failed_carriers":null,"pickup_point_id":null},"service_code":null,"detailed_branded_promise":null,"source_reference":null,"presented_name":"Expedited Shipping"}}} ``` *** ## postRejects a fulfillment request [![](https://shopify.dev/images/logos/GraphQL.svg)![](https://shopify.dev/images/logos/GraphQL-dark.svg)](https://shopify.dev/docs/api/admin-graphql/latest/mutations/fulfillmentOrderRejectFulfillmentRequest?example=rejects-a-fulfillment-request) [fulfillmentOrderRejectFulfillmentRequest](https://shopify.dev/docs/api/admin-graphql/latest/mutations/fulfillmentOrderRejectFulfillmentRequest?example=rejects-a-fulfillment-request) Requires `assigned_fulfillment_orders` access scope. Rejects a fulfillment request sent to a fulfillment service for a fulfillment order. ### Parameters *** api\_version string required *** fulfillment\_order\_id string required *** line\_items array An optional array of line item rejection details. If none are provided, all line items will be assumed to be unfulfillable.\ \ **Note**: After the fulfillment request has been rejected, none of the line items will be able to be fulfilled. This field documents which line items specifically were unable to be fulfilled and why.\ \ Each line item has the following properties: Show line\_items properties * **fulfillment\_order\_line\_item\_id**: An identifier for the line item which cannot be fulfilled. * **message**: An optional message describing why the line item cannot be fulfilled. (150 characters maximum) *** message An optional message for rejecting the fulfillment request. *** reason enum An optional reason for the fulfillment request rejection. Show reason properties * **incorrect\_address**: The fulfillment request was rejected because of an incorrect address. * **inventory\_out\_of\_stock**: The fulfillment request was rejected because inventory is out of stock. * **ineligible\_product**: The fulfillment request was rejected because of an ineligible product. * **undeliverable\_destination**: The fulfillment request was rejected because of an undeliverable destination. * **other**: The fulfillment request was rejected for another reason. *** ### Examples Rejects a fulfillment request sent to a fulfillment service and updates the fulfillment order Path parameters fulfillment\_​order\_​id=​1046000808 string required Request body fulfillment\_​request​ Fulfillment\_request resource Show fulfillment\_request properties fulfillment\_​request.message:​"Not enough inventory on hand to complete the work." A message for the fulfillment request. post ## /admin/api/2025-10/fulfillment\_​orders/1046000808/fulfillment\_​request/reject.​json ```bash curl -d '{"fulfillment_request":{"message":"Not enough inventory on hand to complete the work.","reason":"inventory_out_of_stock","line_items":[{"fulfillment_order_line_item_id":1072503307,"message":"Not enough inventory."}]}}' \ -X POST "https://your-development-store.myshopify.com/admin/api/2025-10/fulfillment_orders/1046000808/fulfillment_request/reject.json" \ -H "X-Shopify-Access-Token: {access_token}" \ -H "Content-Type: application/json" ``` {} ## Response JSON ```json HTTP/1.1 200 OK { "fulfillment_order": { "id": 1046000808, "created_at": "2025-10-01T15:11:23-04:00", "updated_at": "2025-10-01T15:11:25-04:00", "shop_id": 548380009, "order_id": 450789469, "assigned_location_id": 24826418, "request_status": "rejected", "status": "open", "fulfill_at": null, "fulfill_by": null, "supported_actions": [ "request_fulfillment", "create_fulfillment", "hold", "split" ], "destination": { "id": 1042572140, "address1": "Chestnut Street 92", "address2": "", "city": "Louisville", "company": null, "country": "United States", "email": "bob.norman@mail.example.com", "first_name": "Bob", "last_name": "Norman", "phone": "+1(502)-459-2181", "province": "Kentucky", "zip": "40202" }, "origin": { "address1": null, "address2": null, "city": null, "country_code": "DE", "location_id": 24826418, "name": "Apple Api Shipwire", "phone": null, "province": null, "zip": null }, "line_items": [ { "id": 1072503307, "shop_id": 548380009, "fulfillment_order_id": 1046000808, "quantity": 1, "line_item_id": 466157049, "inventory_item_id": 39072856, "fulfillable_quantity": 1, "variant_id": 39072856 }, { "id": 1072503308, "shop_id": 548380009, "fulfillment_order_id": 1046000808, "quantity": 1, "line_item_id": 518995019, "inventory_item_id": 49148385, "fulfillable_quantity": 1, "variant_id": 49148385 }, { "id": 1072503309, "shop_id": 548380009, "fulfillment_order_id": 1046000808, "quantity": 1, "line_item_id": 703073504, "inventory_item_id": 457924702, "fulfillable_quantity": 1, "variant_id": 457924702 } ], "outgoing_requests": [], "international_duties": null, "fulfillment_holds": [], "delivery_method": { "id": 989232623, "method_type": "shipping", "min_delivery_date_time": null, "max_delivery_date_time": null, "additional_information": { "phone": null, "instructions": null, "failed_carriers": null, "pickup_point_id": null }, "service_code": null, "detailed_branded_promise": null, "source_reference": null, "presented_name": "Expedited Shipping" } } } ``` ### examples * #### Rejects a fulfillment request sent to a fulfillment service and updates the fulfillment order ##### ```curl curl -d '{"fulfillment_request":{"message":"Not enough inventory on hand to complete the work.","reason":"inventory_out_of_stock","line_items":[{"fulfillment_order_line_item_id":1072503307,"message":"Not enough inventory."}]}}' \ -X POST "https://your-development-store.myshopify.com/admin/api/2025-10/fulfillment_orders/1046000808/fulfillment_request/reject.json" \ -H "X-Shopify-Access-Token: {access_token}" \ -H "Content-Type: application/json" ``` ##### ```remix const { admin, session } = await authenticate.admin(request); const fulfillment_request = new admin.rest.resources.FulfillmentRequest({session: session}); fulfillment_request.fulfillment_order_id = 1046000808; await fulfillment_request.reject({ body: {"fulfillment_request": {"message": "Not enough inventory on hand to complete the work.", "reason": "inventory_out_of_stock", "line_items": [{"fulfillment_order_line_item_id": 1072503307, "message": "Not enough inventory."}]}}, }); ``` ##### ```ruby # Session is activated via Authentication test_session = ShopifyAPI::Context.active_session fulfillment_request = ShopifyAPI::FulfillmentRequest.new(session: test_session) fulfillment_request.fulfillment_order_id = 1046000808 fulfillment_request.reject( session: test_session, body: {"fulfillment_request" => {"message" => "Not enough inventory on hand to complete the work.", "reason" => "inventory_out_of_stock", "line_items" => [{"fulfillment_order_line_item_id" => 1072503307, "message" => "Not enough inventory."}]}}, ) ``` ##### ```node // Session is built by the OAuth process const fulfillment_request = new shopify.rest.FulfillmentRequest({session: session}); fulfillment_request.fulfillment_order_id = 1046000808; await fulfillment_request.reject({ body: {"fulfillment_request": {"message": "Not enough inventory on hand to complete the work.", "reason": "inventory_out_of_stock", "line_items": [{"fulfillment_order_line_item_id": 1072503307, "message": "Not enough inventory."}]}}, }); ``` #### response ```json HTTP/1.1 200 OK{"fulfillment_order":{"id":1046000808,"created_at":"2025-10-01T15:11:23-04:00","updated_at":"2025-10-01T15:11:25-04:00","shop_id":548380009,"order_id":450789469,"assigned_location_id":24826418,"request_status":"rejected","status":"open","fulfill_at":null,"fulfill_by":null,"supported_actions":["request_fulfillment","create_fulfillment","hold","split"],"destination":{"id":1042572140,"address1":"Chestnut Street 92","address2":"","city":"Louisville","company":null,"country":"United States","email":"bob.norman@mail.example.com","first_name":"Bob","last_name":"Norman","phone":"+1(502)-459-2181","province":"Kentucky","zip":"40202"},"origin":{"address1":null,"address2":null,"city":null,"country_code":"DE","location_id":24826418,"name":"Apple Api Shipwire","phone":null,"province":null,"zip":null},"line_items":[{"id":1072503307,"shop_id":548380009,"fulfillment_order_id":1046000808,"quantity":1,"line_item_id":466157049,"inventory_item_id":39072856,"fulfillable_quantity":1,"variant_id":39072856},{"id":1072503308,"shop_id":548380009,"fulfillment_order_id":1046000808,"quantity":1,"line_item_id":518995019,"inventory_item_id":49148385,"fulfillable_quantity":1,"variant_id":49148385},{"id":1072503309,"shop_id":548380009,"fulfillment_order_id":1046000808,"quantity":1,"line_item_id":703073504,"inventory_item_id":457924702,"fulfillable_quantity":1,"variant_id":457924702}],"outgoing_requests":[],"international_duties":null,"fulfillment_holds":[],"delivery_method":{"id":989232623,"method_type":"shipping","min_delivery_date_time":null,"max_delivery_date_time":null,"additional_information":{"phone":null,"instructions":null,"failed_carriers":null,"pickup_point_id":null},"service_code":null,"detailed_branded_promise":null,"source_reference":null,"presented_name":"Expedited Shipping"}}} ```