--- title: inventoryProperties - GraphQL Admin description: General inventory properties for the shop. api_version: 2025-10 api_name: admin type: query api_type: graphql source_url: html: https://shopify.dev/docs/api/admin-graphql/latest/queries/inventoryproperties md: https://shopify.dev/docs/api/admin-graphql/latest/queries/inventoryproperties.md --- # inventory​Properties query Requires `read_inventory` access scope. General inventory properties for the shop. ## Possible returns * Inventory​Properties [Inventory​Properties!](https://shopify.dev/docs/api/admin-graphql/latest/objects/InventoryProperties) General inventory properties for the shop. *** ## Examples * ### Get inventory properties for a shop #### Description Retrieve the details of inventoryProperties. #### Query ```graphql query inventoryProperties { inventoryProperties { quantityNames { belongsTo comprises displayName isInUse name } } } ``` #### cURL ```bash curl -X POST \ https://your-development-store.myshopify.com/admin/api/2025-10/graphql.json \ -H 'Content-Type: application/json' \ -H 'X-Shopify-Access-Token: {access_token}' \ -d '{ "query": "query inventoryProperties { inventoryProperties { quantityNames { belongsTo comprises displayName isInUse name } } }" }' ``` #### React Router ```javascript import { authenticate } from "../shopify.server"; export const loader = async ({request}) => { const { admin } = await authenticate.admin(request); const response = await admin.graphql( `#graphql query inventoryProperties { inventoryProperties { quantityNames { belongsTo comprises displayName isInUse name } } }`, ); const json = await response.json(); return json.data; } ``` #### Ruby ```ruby session = ShopifyAPI::Auth::Session.new( shop: "your-development-store.myshopify.com", access_token: access_token ) client = ShopifyAPI::Clients::Graphql::Admin.new( session: session ) query = <<~QUERY query inventoryProperties { inventoryProperties { quantityNames { belongsTo comprises displayName isInUse name } } } QUERY response = client.query(query: query) ``` #### Node.js ```javascript const client = new shopify.clients.Graphql({session}); const data = await client.query({ data: `query inventoryProperties { inventoryProperties { quantityNames { belongsTo comprises displayName isInUse name } } }`, }); ``` #### Response ```json { "inventoryProperties": { "quantityNames": [ { "belongsTo": [ "on_hand" ], "comprises": [], "displayName": "Available", "isInUse": true, "name": "available" }, { "belongsTo": [ "on_hand" ], "comprises": [], "displayName": "Committed", "isInUse": true, "name": "committed" }, { "belongsTo": [ "on_hand" ], "comprises": [], "displayName": "Damaged", "isInUse": false, "name": "damaged" }, { "belongsTo": [], "comprises": [], "displayName": "Incoming", "isInUse": true, "name": "incoming" }, { "belongsTo": [], "comprises": [ "available", "committed", "damaged", "quality_control", "reserved", "safety_stock" ], "displayName": "On hand", "isInUse": true, "name": "on_hand" }, { "belongsTo": [ "on_hand" ], "comprises": [], "displayName": "Quality control", "isInUse": false, "name": "quality_control" }, { "belongsTo": [ "on_hand" ], "comprises": [], "displayName": "Reserved", "isInUse": true, "name": "reserved" }, { "belongsTo": [ "on_hand" ], "comprises": [], "displayName": "Safety stock", "isInUse": false, "name": "safety_stock" } ] } } ``` * ### Get inventory quantity names to be used with inventory queries and mutations #### Description Retrieve the details of inventoryProperties. #### Query ```graphql query inventoryProperties { inventoryProperties { quantityNames { name isInUse } } } ``` #### cURL ```bash curl -X POST \ https://your-development-store.myshopify.com/admin/api/2025-10/graphql.json \ -H 'Content-Type: application/json' \ -H 'X-Shopify-Access-Token: {access_token}' \ -d '{ "query": "query inventoryProperties { inventoryProperties { quantityNames { name isInUse } } }" }' ``` #### React Router ```javascript import { authenticate } from "../shopify.server"; export const loader = async ({request}) => { const { admin } = await authenticate.admin(request); const response = await admin.graphql( `#graphql query inventoryProperties { inventoryProperties { quantityNames { name isInUse } } }`, ); const json = await response.json(); return json.data; } ``` #### Ruby ```ruby session = ShopifyAPI::Auth::Session.new( shop: "your-development-store.myshopify.com", access_token: access_token ) client = ShopifyAPI::Clients::Graphql::Admin.new( session: session ) query = <<~QUERY query inventoryProperties { inventoryProperties { quantityNames { name isInUse } } } QUERY response = client.query(query: query) ``` #### Node.js ```javascript const client = new shopify.clients.Graphql({session}); const data = await client.query({ data: `query inventoryProperties { inventoryProperties { quantityNames { name isInUse } } }`, }); ``` #### Response ```json { "inventoryProperties": { "quantityNames": [ { "name": "available", "isInUse": true }, { "name": "committed", "isInUse": true }, { "name": "damaged", "isInUse": false }, { "name": "incoming", "isInUse": true }, { "name": "on_hand", "isInUse": true }, { "name": "quality_control", "isInUse": false }, { "name": "reserved", "isInUse": true }, { "name": "safety_stock", "isInUse": false } ] } } ``` [Open in GraphiQL](http://localhost:3457/graphiql?query=query%20inventoryProperties%20%7B%0A%20%20inventoryProperties%20%7B%0A%20%20%20%20quantityNames%20%7B%0A%20%20%20%20%20%20belongsTo%0A%20%20%20%20%20%20comprises%0A%20%20%20%20%20%20displayName%0A%20%20%20%20%20%20isInUse%0A%20%20%20%20%20%20name%0A%20%20%20%20%7D%0A%20%20%7D%0A%7D) ```javascript import { authenticate } from "../shopify.server"; export const loader = async ({request}) => { const { admin } = await authenticate.admin(request); const response = await admin.graphql( `#graphql query inventoryProperties { inventoryProperties { quantityNames { belongsTo comprises displayName isInUse name } } }`, ); const json = await response.json(); return json.data; } ``` ##### GQL ``` query inventoryProperties { inventoryProperties { quantityNames { belongsTo comprises displayName isInUse name } } } ``` ##### cURL ``` curl -X POST \ https://your-development-store.myshopify.com/admin/api/2025-10/graphql.json \ -H 'Content-Type: application/json' \ -H 'X-Shopify-Access-Token: {access_token}' \ -d '{ "query": "query inventoryProperties { inventoryProperties { quantityNames { belongsTo comprises displayName isInUse name } } }" }' ``` ##### React Router ``` import { authenticate } from "../shopify.server"; export const loader = async ({request}) => { const { admin } = await authenticate.admin(request); const response = await admin.graphql( `#graphql query inventoryProperties { inventoryProperties { quantityNames { belongsTo comprises displayName isInUse name } } }`, ); const json = await response.json(); return json.data; } ``` ##### Node.js ``` const client = new shopify.clients.Graphql({session}); const data = await client.query({ data: `query inventoryProperties { inventoryProperties { quantityNames { belongsTo comprises displayName isInUse name } } }`, }); ``` ##### Ruby ``` session = ShopifyAPI::Auth::Session.new( shop: "your-development-store.myshopify.com", access_token: access_token ) client = ShopifyAPI::Clients::Graphql::Admin.new( session: session ) query = <<~QUERY query inventoryProperties { inventoryProperties { quantityNames { belongsTo comprises displayName isInUse name } } } QUERY response = client.query(query: query) ``` ## Response JSON ```json { "inventoryProperties": { "quantityNames": [ { "belongsTo": [ "on_hand" ], "comprises": [], "displayName": "Available", "isInUse": true, "name": "available" }, { "belongsTo": [ "on_hand" ], "comprises": [], "displayName": "Committed", "isInUse": true, "name": "committed" }, { "belongsTo": [ "on_hand" ], "comprises": [], "displayName": "Damaged", "isInUse": false, "name": "damaged" }, { "belongsTo": [], "comprises": [], "displayName": "Incoming", "isInUse": true, "name": "incoming" }, { "belongsTo": [], "comprises": [ "available", "committed", "damaged", "quality_control", "reserved", "safety_stock" ], "displayName": "On hand", "isInUse": true, "name": "on_hand" }, { "belongsTo": [ "on_hand" ], "comprises": [], "displayName": "Quality control", "isInUse": false, "name": "quality_control" }, { "belongsTo": [ "on_hand" ], "comprises": [], "displayName": "Reserved", "isInUse": true, "name": "reserved" }, { "belongsTo": [ "on_hand" ], "comprises": [], "displayName": "Safety stock", "isInUse": false, "name": "safety_stock" } ] } } ```