# returnRequest - admin - MUTATION
Version: 2024-04

## Description
A customer's return request that hasn't been approved or declined.
This mutation sets the value of the `Return.status` field to `REQUESTED`.
To create a return that has the `Return.status` field set to `OPEN`, use the `returnCreate` mutation.

### Access Scopes
`write_returns` access scope or `write_marketplace_returns` access scope. Also: Requires the `write_orders` access scope. The user must have `return_orders` permission.


## Arguments
* [input](/docs/api/admin/2024-04/input-objects/ReturnRequestInput): ReturnRequestInput! - The input fields for requesting a return.


## Returns
* [return](/docs/api/admin/2024-04/objects/Return): Return The requested return.
* [userErrors](/docs/api/admin/2024-04/objects/ReturnUserError): ReturnUserError! The list of errors that occurred from executing the mutation.


## Examples
### Request a return
Curl example: "curl -X POST \\\nhttps://your-development-store.myshopify.com/admin/api/2024-04/graphql.json \\\n-H 'Content-Type: application/json' \\\n-H 'X-Shopify-Access-Token: {access_token}' \\\n-d '{\n\"query\": \"mutation ReturnRequest($input: ReturnRequestInput!) { returnRequest(input: $input) { userErrors { field message } return { id status returnLineItems(first: 1) { edges { node { id returnReason customerNote } } } order { id } } } }\",\n \"variables\": {\n    \"input\": {\n      \"orderId\": \"gid://shopify/Order/625362839\",\n      \"returnLineItems\": [\n        {\n          \"fulfillmentLineItemId\": \"gid://shopify/FulfillmentLineItem/820022594\",\n          \"quantity\": 1,\n          \"returnReason\": \"WRONG_ITEM\",\n          \"customerNote\": \"Sorry, I ordered the wrong item. Could I get a refund or store credit?\"\n        }\n      ]\n    }\n  }\n}'\n"
Node example: "const client = new shopify.clients.Graphql({session});\nconst data = await client.query({\n  data: {\n    \"query\": `mutation ReturnRequest($input: ReturnRequestInput!) {\n      returnRequest(input: $input) {\n        userErrors {\n          field\n          message\n        }\n        return {\n          id\n          status\n          returnLineItems(first: 1) {\n            edges {\n              node {\n                id\n                returnReason\n                customerNote\n              }\n            }\n          }\n          order {\n            id\n          }\n        }\n      }\n    }`,\n    \"variables\": {\n      \"input\": {\n        \"orderId\": \"gid://shopify/Order/625362839\",\n        \"returnLineItems\": [\n          {\n            \"fulfillmentLineItemId\": \"gid://shopify/FulfillmentLineItem/820022594\",\n            \"quantity\": 1,\n            \"returnReason\": \"WRONG_ITEM\",\n            \"customerNote\": \"Sorry, I ordered the wrong item. Could I get a refund or store credit?\"\n          }\n        ]\n      }\n    },\n  },\n});\n"
Ruby example: "session = ShopifyAPI::Auth::Session.new(\n  shop: \"your-development-store.myshopify.com\",\n  access_token: access_token\n)\nclient = ShopifyAPI::Clients::Graphql::Admin.new(\n  session: session\n)\n\nquery = <<~QUERY\n  mutation ReturnRequest($input: ReturnRequestInput!) {\n    returnRequest(input: $input) {\n      userErrors {\n        field\n        message\n      }\n      return {\n        id\n        status\n        returnLineItems(first: 1) {\n          edges {\n            node {\n              id\n              returnReason\n              customerNote\n            }\n          }\n        }\n        order {\n          id\n        }\n      }\n    }\n  }\nQUERY\n\nvariables = {\n  \"input\": {\n    \"orderId\": \"gid://shopify/Order/625362839\",\n    \"returnLineItems\": [{\"fulfillmentLineItemId\"=>\"gid://shopify/FulfillmentLineItem/820022594\", \"quantity\"=>1, \"returnReason\"=>\"WRONG_ITEM\", \"customerNote\"=>\"Sorry, I ordered the wrong item. Could I get a refund or store credit?\"}]\n  }\n}\n\nresponse = client.query(query: query, variables: variables)\n" 
Remix example: "const { admin } = await authenticate.admin(request);\n\nconst response = await admin.graphql(\n  `#graphql\n  mutation ReturnRequest($input: ReturnRequestInput!) {\n    returnRequest(input: $input) {\n      userErrors {\n        field\n        message\n      }\n      return {\n        id\n        status\n        returnLineItems(first: 1) {\n          edges {\n            node {\n              id\n              returnReason\n              customerNote\n            }\n          }\n        }\n        order {\n          id\n        }\n      }\n    }\n  }`,\n  {\n    variables: {\n      \"input\": {\n        \"orderId\": \"gid://shopify/Order/625362839\",\n        \"returnLineItems\": [\n          {\n            \"fulfillmentLineItemId\": \"gid://shopify/FulfillmentLineItem/820022594\",\n            \"quantity\": 1,\n            \"returnReason\": \"WRONG_ITEM\",\n            \"customerNote\": \"Sorry, I ordered the wrong item. Could I get a refund or store credit?\"\n          }\n        ]\n      }\n    },\n  },\n);\n\nconst data = await response.json();\n"
Graphql query: "mutation ReturnRequest($input: ReturnRequestInput!) {\n  returnRequest(input: $input) {\n    userErrors {\n      field\n      message\n    }\n    return {\n      id\n      status\n      returnLineItems(first: 1) {\n        edges {\n          node {\n            id\n            returnReason\n            customerNote\n          }\n        }\n      }\n      order {\n        id\n      }\n    }\n  }\n}"
#### Graphql Input
{
  "input": {
    "orderId": "gid://shopify/Order/625362839",
    "returnLineItems": [
      {
        "fulfillmentLineItemId": "gid://shopify/FulfillmentLineItem/820022594",
        "quantity": 1,
        "returnReason": "WRONG_ITEM",
        "customerNote": "Sorry, I ordered the wrong item. Could I get a refund or store credit?"
      }
    ]
  }
}
#### Graphql Response
{
  "data": {
    "returnRequest": {
      "userErrors": [],
      "return": {
        "id": "gid://shopify/Return/945000961",
        "status": "REQUESTED",
        "returnLineItems": {
          "edges": [
            {
              "node": {
                "id": "gid://shopify/ReturnLineItem/677614678",
                "returnReason": "WRONG_ITEM",
                "customerNote": "Sorry, I ordered the wrong item. Could I get a refund or store credit?"
              }
            }
          ]
        },
        "order": {
          "id": "gid://shopify/Order/625362839"
        }
      }
    }
  }
}