Requires write_products access scope. Also: The user must have a permission to create a price list.

Creates a price list. You can use the priceListCreate mutation to create a new price list and associate it with a catalog. This enables you to sell your products with contextual pricing.


The properties of the new price list.


Was this section helpful?

The newly created price list.

The list of errors that occurred from executing the mutation.


Was this section helpful?

Examples

Hide code
DescriptionCopy
mutation PriceListCreate($input: PriceListCreateInput!) {
  priceListCreate(input: $input) {
    userErrors {
      field
      message
    }
    priceList {
      id
      name
      currency
      parent {
        adjustment {
          type
          value
        }
      }
    }
  }
}
curl -X POST \
https://your-development-store.myshopify.com/admin/api/2024-01/graphql.json \
-H 'Content-Type: application/json' \
-H 'X-Shopify-Access-Token: {access_token}' \
-d '{
"query": "mutation PriceListCreate($input: PriceListCreateInput!) { priceListCreate(input: $input) { userErrors { field message } priceList { id name currency parent { adjustment { type value } } } } }",
 "variables": {
    "input": {
      "name": "Price List",
      "currency": "USD",
      "parent": {
        "adjustment": {
          "type": "PERCENTAGE_INCREASE",
          "value": 10
        }
      }
    }
  }
}'
const { admin } = await authenticate.admin(request);

const response = await admin.graphql(
  `#graphql
  mutation PriceListCreate($input: PriceListCreateInput!) {
    priceListCreate(input: $input) {
      userErrors {
        field
        message
      }
      priceList {
        id
        name
        currency
        parent {
          adjustment {
            type
            value
          }
        }
      }
    }
  }`,
  {
    variables: {
      "input": {
        "name": "Price List",
        "currency": "USD",
        "parent": {
          "adjustment": {
            "type": "PERCENTAGE_INCREASE",
            "value": 10
          }
        }
      }
    },
  },
);

const data = await response.json();
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
  mutation PriceListCreate($input: PriceListCreateInput!) {
    priceListCreate(input: $input) {
      userErrors {
        field
        message
      }
      priceList {
        id
        name
        currency
        parent {
          adjustment {
            type
            value
          }
        }
      }
    }
  }
QUERY

variables = {
  "input": {
    "name": "Price List",
    "currency": "USD",
    "parent": {
      "adjustment": {
        "type": "PERCENTAGE_INCREASE",
        "value": 10
      }
    }
  }
}

response = client.query(query: query, variables: variables)
const client = new shopify.clients.Graphql({session});
const data = await client.query({
  data: {
    "query": `mutation PriceListCreate($input: PriceListCreateInput!) {
      priceListCreate(input: $input) {
        userErrors {
          field
          message
        }
        priceList {
          id
          name
          currency
          parent {
            adjustment {
              type
              value
            }
          }
        }
      }
    }`,
    "variables": {
      "input": {
        "name": "Price List",
        "currency": "USD",
        "parent": {
          "adjustment": {
            "type": "PERCENTAGE_INCREASE",
            "value": 10
          }
        }
      }
    },
  },
});
use Shopify\Clients\Graphql;

$client = new Graphql("your-development-store.myshopify.com", $accessToken);
$query = <<<QUERY
  mutation PriceListCreate($input: PriceListCreateInput!) {
    priceListCreate(input: $input) {
      userErrors {
        field
        message
      }
      priceList {
        id
        name
        currency
        parent {
          adjustment {
            type
            value
          }
        }
      }
    }
  }
QUERY;

$variables = [
  "input" => [
    "name" => "Price List",
    "currency" => "USD",
    "parent" => [
      "adjustment" => [
        "type" => "PERCENTAGE_INCREASE",
        "value" => 10,
      ],
    ],
  ],
];

$response = $client->query(["query" => $query, "variables" => $variables]);
Hide code
Input variables
Copy
{
  "input": {
    "name": "Price List",
    "currency": "USD",
    "parent": {
      "adjustment": {
        "type": "PERCENTAGE_INCREASE",
        "value": 10
      }
    }
  }
}
Hide code
Response
JSON
{
  "priceListCreate": {
    "userErrors": [],
    "priceList": {
      "id": "gid://shopify/PriceList/1014716633",
      "name": "Price List",
      "currency": "USD",
      "parent": {
        "adjustment": {
          "type": "PERCENTAGE_INCREASE",
          "value": 10
        }
      }
    }
  }
}