# locationDelete - admin-graphql - MUTATION
Version: 2025-01

## Description
Deletes a location.

### Access Scopes
`write_locations` access scope.


## Arguments
* [locationId](/docs/api/admin-graphql/2025-01/scalars/ID): ID! - The ID of a location to delete.


## Returns
* [deletedLocationId](/docs/api/admin-graphql/2025-01/scalars/ID): ID The ID of the location that was deleted.
* [locationDeleteUserErrors](/docs/api/admin-graphql/2025-01/objects/LocationDeleteUserError): LocationDeleteUserError! The list of errors that occurred from executing the mutation.


## Examples
### Delete a location and return the location ID
Curl example: "curl -X POST \\\nhttps://your-development-store.myshopify.com/admin/api/2025-01/graphql.json \\\n-H 'Content-Type: application/json' \\\n-H 'X-Shopify-Access-Token: {access_token}' \\\n-d '{\n\"query\": \"mutation { locationDelete(locationId: \\\"gid://shopify/Location/658095763\\\") { deletedLocationId } }\"\n}'\n"
Node example: "const client = new shopify.clients.Graphql({session});\nconst data = await client.query({\n  data: `mutation {\n    locationDelete(locationId: \"gid://shopify/Location/658095763\") {\n      deletedLocationId\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 {\n    locationDelete(locationId: \"gid://shopify/Location/658095763\") {\n      deletedLocationId\n    }\n  }\nQUERY\n\nresponse = client.query(query: query)\n" 
Remix example: "const { admin } = await authenticate.admin(request);\n\nconst response = await admin.graphql(\n  `#graphql\n  mutation {\n    locationDelete(locationId: \"gid://shopify/Location/658095763\") {\n      deletedLocationId\n    }\n  }`,\n);\n\nconst data = await response.json();\n"
Graphql query: "mutation {\n  locationDelete(locationId: \"gid://shopify/Location/658095763\") {\n    deletedLocationId\n  }\n}"
#### Graphql Input
null
#### Graphql Response
{
  "data": {
    "locationDelete": {
      "deletedLocationId": "gid://shopify/Location/658095763"
    }
  }
}

### Delete an active location
Curl example: "curl -X POST \\\nhttps://your-development-store.myshopify.com/admin/api/2025-01/graphql.json \\\n-H 'Content-Type: application/json' \\\n-H 'X-Shopify-Access-Token: {access_token}' \\\n-d '{\n\"query\": \"mutation { locationDelete(locationId: \\\"gid://shopify/Location/658095763\\\") { deletedLocationId locationDeleteUserErrors { message code field } } }\"\n}'\n"
Node example: "const client = new shopify.clients.Graphql({session});\nconst data = await client.query({\n  data: `mutation {\n    locationDelete(locationId: \"gid://shopify/Location/658095763\") {\n      deletedLocationId\n      locationDeleteUserErrors {\n        message\n        code\n        field\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 {\n    locationDelete(locationId: \"gid://shopify/Location/658095763\") {\n      deletedLocationId\n      locationDeleteUserErrors {\n        message\n        code\n        field\n      }\n    }\n  }\nQUERY\n\nresponse = client.query(query: query)\n" 
Remix example: "const { admin } = await authenticate.admin(request);\n\nconst response = await admin.graphql(\n  `#graphql\n  mutation {\n    locationDelete(locationId: \"gid://shopify/Location/658095763\") {\n      deletedLocationId\n      locationDeleteUserErrors {\n        message\n        code\n        field\n      }\n    }\n  }`,\n);\n\nconst data = await response.json();\n"
Graphql query: "mutation {\n  locationDelete(locationId: \"gid://shopify/Location/658095763\") {\n    deletedLocationId\n    locationDeleteUserErrors {\n      message\n      code\n      field\n    }\n  }\n}"
#### Graphql Input
null
#### Graphql Response
{
  "data": {
    "locationDelete": {
      "deletedLocationId": null,
      "locationDeleteUserErrors": [
        {
          "message": "The location cannot be deleted while it is active.",
          "code": "LOCATION_IS_ACTIVE",
          "field": [
            "locationId"
          ]
        }
      ]
    }
  }
}