---
title: CancellationRequest
description: >-
  Manage the cancellation request flow of fulfillment orders assigned to
  fulfillment services.
api_version: 2026-07
source_url:
  html: 'https://shopify.dev/docs/api/admin-rest/latest/resources/cancellationrequest'
  md: >-
    https://shopify.dev/docs/api/admin-rest/latest/resources/cancellationrequest.md
api_name: admin-rest
api_type: rest
---

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).

# Cancellation​Request

**Multiple access scopes needed — refer to each endpoint for access scope requirements.:**

The `CancellationRequest` resource represents a cancellation 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 cancellation request.

## Retrieving cancellation 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 cancellation 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/cancellationrequest.md#post-fulfillment-orders-fulfillment-order-id-cancellation-request)

  [/admin/api/latest/fulfillment\_​orders/{fulfillment\_​order\_​id}/cancellation\_​request.​json](https://shopify.dev/docs/api/admin-rest/latest/resources/cancellationrequest.md#post-fulfillment-orders-fulfillment-order-id-cancellation-request)

  Sends a cancellation request

  [fulfillmentOrderSubmitCancellationRequest](https://shopify.dev/docs/api/admin-graphql/latest/mutations/fulfillmentOrderSubmitCancellationRequest?example=sends-a-cancellation-request)

* [post](https://shopify.dev/docs/api/admin-rest/latest/resources/cancellationrequest.md#post-fulfillment-orders-fulfillment-order-id-cancellation-request-accept)

  [/admin/api/latest/fulfillment\_​orders/{fulfillment\_​order\_​id}/cancellation\_​request/accept.​json](https://shopify.dev/docs/api/admin-rest/latest/resources/cancellationrequest.md#post-fulfillment-orders-fulfillment-order-id-cancellation-request-accept)

  Accepts a cancellation request

  [fulfillmentOrderAcceptCancellationRequest](https://shopify.dev/docs/api/admin-graphql/latest/mutations/fulfillmentOrderAcceptCancellationRequest?example=accepts-a-cancellation-request)

* [post](https://shopify.dev/docs/api/admin-rest/latest/resources/cancellationrequest.md#post-fulfillment-orders-fulfillment-order-id-cancellation-request-reject)

  [/admin/api/latest/fulfillment\_​orders/{fulfillment\_​order\_​id}/cancellation\_​request/reject.​json](https://shopify.dev/docs/api/admin-rest/latest/resources/cancellationrequest.md#post-fulfillment-orders-fulfillment-order-id-cancellation-request-reject)

  Rejects a cancellation request

  [fulfillmentOrderRejectCancellationRequest](https://shopify.dev/docs/api/admin-graphql/latest/mutations/fulfillmentOrderRejectCancellationRequest?example=rejects-a-cancellation-request)

***

## The CancellationRequest resource

### Properties

***

{}

## The CancellationRequest resource

```json
{}
```

***

## postSends a cancellation request

[fulfillmentOrderSubmitCancellationRequest](https://shopify.dev/docs/api/admin-graphql/latest/mutations/fulfillmentOrderSubmitCancellationRequest?example=sends-a-cancellation-request)

**Requires \`third\_party\_fulfillment\_orders\` access scope.:**

Sends a cancellation request to the fulfillment service of a fulfillment order.

### Parameters

***

api\_version

**string**

**required**

***

fulfillment\_order\_id

**string**

**required**

***

message

An optional reason for the cancellation request.

***

### Examples

### Sends a cancellation request to the fulfillment service of a fulfillment order and updates the fulfillment order

### Path parameters

fulfillment\_​order\_​id=​1046000784

**string**

**required**

post

## /admin/api/2026-07/fulfillment\_​orders/1046000784/cancellation\_​request.​json

```bash
curl -d '{"cancellation_request":{"message":"The customer changed his mind."}}' \
-X POST "https://your-development-store.myshopify.com/admin/api/2026-07/fulfillment_orders/1046000784/cancellation_request.json" \
-H "X-Shopify-Access-Token: {access_token}" \
-H "Content-Type: application/json"
```

{}

## Response

JSON

```json
HTTP/1.1 200 OK
{
  "fulfillment_order": {
    "id": 1046000784,
    "created_at": "2026-07-02T10:41:16-04:00",
    "updated_at": "2026-07-02T10:41:16-04:00",
    "shop_id": 548380009,
    "order_id": 450789469,
    "assigned_location_id": 24826418,
    "request_status": "cancellation_requested",
    "status": "in_progress",
    "fulfill_at": null,
    "fulfill_by": null,
    "supported_actions": [
      "create_fulfillment",
      "cancel_fulfillment_order"
    ],
    "destination": {
      "id": 1042572117,
      "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": 1072503282,
        "shop_id": 548380009,
        "fulfillment_order_id": 1046000784,
        "quantity": 1,
        "line_item_id": 518995019,
        "inventory_item_id": 49148385,
        "fulfillable_quantity": 1,
        "variant_id": 49148385
      }
    ],
    "outgoing_requests": [],
    "international_duties": null,
    "fulfillment_holds": [],
    "delivery_method": null
  }
}
```

### examples

* #### Sends a cancellation request to the fulfillment service of a fulfillment order and updates the fulfillment order

  #####

  ```curl
  curl -d '{"cancellation_request":{"message":"The customer changed his mind."}}' \
  -X POST "https://your-development-store.myshopify.com/admin/api/2026-07/fulfillment_orders/1046000784/cancellation_request.json" \
  -H "X-Shopify-Access-Token: {access_token}" \
  -H "Content-Type: application/json"
  ```

  #### response

  ```json
  HTTP/1.1 200 OK{"fulfillment_order":{"id":1046000784,"created_at":"2026-07-02T10:41:16-04:00","updated_at":"2026-07-02T10:41:16-04:00","shop_id":548380009,"order_id":450789469,"assigned_location_id":24826418,"request_status":"cancellation_requested","status":"in_progress","fulfill_at":null,"fulfill_by":null,"supported_actions":["create_fulfillment","cancel_fulfillment_order"],"destination":{"id":1042572117,"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":1072503282,"shop_id":548380009,"fulfillment_order_id":1046000784,"quantity":1,"line_item_id":518995019,"inventory_item_id":49148385,"fulfillable_quantity":1,"variant_id":49148385}],"outgoing_requests":[],"international_duties":null,"fulfillment_holds":[],"delivery_method":null}}
  ```

***

## postAccepts a cancellation request

[fulfillmentOrderAcceptCancellationRequest](https://shopify.dev/docs/api/admin-graphql/latest/mutations/fulfillmentOrderAcceptCancellationRequest?example=accepts-a-cancellation-request)

**Requires \`assigned\_fulfillment\_orders\` access scope.:**

Accepts a cancellation 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 cancellation request.

***

### Examples

### Accepts a cancellation request sent to a fulfillment service and updates the fulfillment order

### Path parameters

fulfillment\_​order\_​id=​1046000783

**string**

**required**

post

## /admin/api/2026-07/fulfillment\_​orders/1046000783/cancellation\_​request/accept.​json

```bash
curl -d '{"cancellation_request":{"message":"We had not started any processing yet."}}' \
-X POST "https://your-development-store.myshopify.com/admin/api/2026-07/fulfillment_orders/1046000783/cancellation_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": 1046000783,
    "created_at": "2026-07-02T10:41:15-04:00",
    "updated_at": "2026-07-02T10:41:15-04:00",
    "shop_id": 548380009,
    "order_id": 450789469,
    "assigned_location_id": 24826418,
    "request_status": "cancellation_accepted",
    "status": "cancelled",
    "fulfill_at": null,
    "fulfill_by": null,
    "supported_actions": [
      "request_fulfillment",
      "create_fulfillment",
      "hold"
    ],
    "destination": {
      "id": 1042572116,
      "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": 1072503281,
        "shop_id": 548380009,
        "fulfillment_order_id": 1046000783,
        "quantity": 1,
        "line_item_id": 518995019,
        "inventory_item_id": 49148385,
        "fulfillable_quantity": 1,
        "variant_id": 49148385
      }
    ],
    "outgoing_requests": [],
    "international_duties": null,
    "fulfillment_holds": [],
    "delivery_method": null
  }
}
```

### examples

* #### Accepts a cancellation request sent to a fulfillment service and updates the fulfillment order

  #####

  ```curl
  curl -d '{"cancellation_request":{"message":"We had not started any processing yet."}}' \
  -X POST "https://your-development-store.myshopify.com/admin/api/2026-07/fulfillment_orders/1046000783/cancellation_request/accept.json" \
  -H "X-Shopify-Access-Token: {access_token}" \
  -H "Content-Type: application/json"
  ```

  #### response

  ```json
  HTTP/1.1 200 OK{"fulfillment_order":{"id":1046000783,"created_at":"2026-07-02T10:41:15-04:00","updated_at":"2026-07-02T10:41:15-04:00","shop_id":548380009,"order_id":450789469,"assigned_location_id":24826418,"request_status":"cancellation_accepted","status":"cancelled","fulfill_at":null,"fulfill_by":null,"supported_actions":["request_fulfillment","create_fulfillment","hold"],"destination":{"id":1042572116,"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":1072503281,"shop_id":548380009,"fulfillment_order_id":1046000783,"quantity":1,"line_item_id":518995019,"inventory_item_id":49148385,"fulfillable_quantity":1,"variant_id":49148385}],"outgoing_requests":[],"international_duties":null,"fulfillment_holds":[],"delivery_method":null}}
  ```

***

## postRejects a cancellation request

[fulfillmentOrderRejectCancellationRequest](https://shopify.dev/docs/api/admin-graphql/latest/mutations/fulfillmentOrderRejectCancellationRequest?example=rejects-a-cancellation-request)

**Requires \`assigned\_fulfillment\_orders\` access scope.:**

Rejects a cancellation 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 rejecting the cancellation request.

***

### Examples

### Rejects a cancellation request sent to a fulfillment service and updates the fulfillment order

### Path parameters

fulfillment\_​order\_​id=​1046000782

**string**

**required**

post

## /admin/api/2026-07/fulfillment\_​orders/1046000782/cancellation\_​request/reject.​json

```bash
curl -d '{"cancellation_request":{"message":"We have already sent the shipment out."}}' \
-X POST "https://your-development-store.myshopify.com/admin/api/2026-07/fulfillment_orders/1046000782/cancellation_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": 1046000782,
    "created_at": "2026-07-02T10:41:13-04:00",
    "updated_at": "2026-07-02T10:41:14-04:00",
    "shop_id": 548380009,
    "order_id": 450789469,
    "assigned_location_id": 24826418,
    "request_status": "cancellation_rejected",
    "status": "in_progress",
    "fulfill_at": null,
    "fulfill_by": null,
    "supported_actions": [
      "create_fulfillment"
    ],
    "destination": {
      "id": 1042572115,
      "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": 1072503280,
        "shop_id": 548380009,
        "fulfillment_order_id": 1046000782,
        "quantity": 1,
        "line_item_id": 518995019,
        "inventory_item_id": 49148385,
        "fulfillable_quantity": 1,
        "variant_id": 49148385
      }
    ],
    "outgoing_requests": [],
    "international_duties": null,
    "fulfillment_holds": [],
    "delivery_method": null
  }
}
```

### examples

* #### Rejects a cancellation request sent to a fulfillment service and updates the fulfillment order

  #####

  ```curl
  curl -d '{"cancellation_request":{"message":"We have already sent the shipment out."}}' \
  -X POST "https://your-development-store.myshopify.com/admin/api/2026-07/fulfillment_orders/1046000782/cancellation_request/reject.json" \
  -H "X-Shopify-Access-Token: {access_token}" \
  -H "Content-Type: application/json"
  ```

  #### response

  ```json
  HTTP/1.1 200 OK{"fulfillment_order":{"id":1046000782,"created_at":"2026-07-02T10:41:13-04:00","updated_at":"2026-07-02T10:41:14-04:00","shop_id":548380009,"order_id":450789469,"assigned_location_id":24826418,"request_status":"cancellation_rejected","status":"in_progress","fulfill_at":null,"fulfill_by":null,"supported_actions":["create_fulfillment"],"destination":{"id":1042572115,"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":1072503280,"shop_id":548380009,"fulfillment_order_id":1046000782,"quantity":1,"line_item_id":518995019,"inventory_item_id":49148385,"fulfillable_quantity":1,"variant_id":49148385}],"outgoing_requests":[],"international_duties":null,"fulfillment_holds":[],"delivery_method":null}}
  ```
