Deprecation warning received, but no additional information provided

Since today, we have been receiving a deprecation warning for the 2025-01 GraphQL endpoint. Since we haven’t made any changes to the code, the issue must stem from a change on Shopify’s side. Unfortunately, I couldn’t find anything relevant in the changelog. Additionally, the error message from Shopify isn’t helpful at all— all I know is that it relates to a ProductSet mutation query.

Message and Context from the PHP Client / Response: (The deprecation is indicated from the api, trough the X_SHOPIFY_API_DEPRECATED_REASON Header)

API Deprecation notice

[url] => https://<MYTESTSTORE>.myshopify.com/admin/api/2025-01/graphql.json
[reason] => https://shopify.dev/api/usage/versioning#deprecation-practices

the mutation:

mutation createProductAsynchronous($entity1: ProductSetInput!, $synchronous: Boolean!) {
  entity1: productSet(synchronous: $synchronous, input: $entity1) {
    product {
      id
    }
    userErrors {
      code
      field
      message
    }
  }
}

the example payload:

{
  "entity1": {
    "title": "Random Product Title #1 (Updated)",
    "handle": "product-random-handle-12345",
    "descriptionHtml": "Lorem Ipsum Dolor Sit Amet Consectetur",
    "vendor": "Generic Vendor",
    "productType": "Snowboard",
    "files": [
      {
        "originalSource": "https://some-random-domain.com/support-teaser.png",
        "contentType": "IMAGE"
      }
    ],
    "variants": [
      {
        "optionValues": [
          {
            "optionName": "Color",
            "name": "Blue"
          },
          {
            "optionName": "Size",
            "name": "XL"
          }
        ],
        "inventoryItem": {
          "measurement": {
            "weight": {
              "unit": "KILOGRAMS",
              "value": 1
            }
          }
        }
      },
      {
        "optionValues": [
          {
            "optionName": "Color",
            "name": "Red"
          },
          {
            "optionName": "Size",
            "name": "XXL"
          }
        ],
        "inventoryItem": {
          "measurement": {
            "weight": {
              "unit": "KILOGRAMS",
              "value": 2
            }
          }
        }
      }
    ],
    "productOptions": [
      {
        "name": "Color",
        "position": 1,
        "values": [
          { "name": "Blue" },
          { "name": "Red" }
        ]
      },
      {
        "name": "Size",
        "position": 2,
        "values": [
          { "name": "XL" },
          { "name": "XXL" }
        ]
      }
    ],
    "id": "gid://shopify/Product/9876543210"
  },
  "synchronous": true
}

Any hint into the right direction?

Is there anything in your Partner Dashboard for the app under API health?

No, i checked that already:

Found it!

I think this is an “eager” deprecation warning, in the 2025-04 API the id field in input, has deprecated in favour of identifier parameter

But in the 2025-01 is no identifier argument documented? So just replacing id with identifier should work?

No I think the deprecation warning has just been released too soon.
In the 2025-04 API it changes, you can change the API version in the docs in the sidebar to see what this looks like.
You’ll then see the new identifier parameter.
I think just wait until next month and then you can upgrade :smiley:

Hi Nadar,

It does look like it’s related to the id field:


If you remove id and replace with a different field (eg: handle) does the warning disappear?