Anchor to section titled 'undefined'

productUpdateMedia
mutation

Requires write_products access scope. Also: The user must have a permission to update media for a product.

Updates media for a product.


A list of media updates.

Anchor to productId
productId
required

Specifies the product on which media will be updated.


Was this section helpful?

The updated media object.

The list of errors that occurred from executing the mutation.

The product on which media was updated.

The list of errors that occurred from executing the mutation. Use mediaUserErrors instead.


Was this section helpful?

Examples

Hide code
DescriptionCopy
mutation productUpdateMedia($media: [UpdateMediaInput!]!, $productId: ID!) {
  productUpdateMedia(media: $media, productId: $productId) {
    media {
      alt
    }
  }
}
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 productUpdateMedia($media: [UpdateMediaInput!]!, $productId: ID!) { productUpdateMedia(media: $media, productId: $productId) { media { alt } } }",
 "variables": {
    "media": [
      {
        "alt": "Some alt text",
        "id": "gid://shopify/Video/723685877"
      },
      {
        "alt": "Some more alt text",
        "id": "gid://shopify/MediaImage/853695510"
      }
    ],
    "productId": "gid://shopify/Product/108828309"
  }
}'
const { admin } = await authenticate.admin(request);

const response = await admin.graphql(
  `#graphql
  mutation productUpdateMedia($media: [UpdateMediaInput!]!, $productId: ID!) {
    productUpdateMedia(media: $media, productId: $productId) {
      media {
        alt
      }
    }
  }`,
  {
    variables: {
      "media": [
        {
          "alt": "Some alt text",
          "id": "gid://shopify/Video/723685877"
        },
        {
          "alt": "Some more alt text",
          "id": "gid://shopify/MediaImage/853695510"
        }
      ],
      "productId": "gid://shopify/Product/108828309"
    },
  },
);

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 productUpdateMedia($media: [UpdateMediaInput!]!, $productId: ID!) {
    productUpdateMedia(media: $media, productId: $productId) {
      media {
        alt
      }
    }
  }
QUERY

variables = {
  "media": [{"alt"=>"Some alt text", "id"=>"gid://shopify/Video/723685877"}, {"alt"=>"Some more alt text", "id"=>"gid://shopify/MediaImage/853695510"}],
  "productId": "gid://shopify/Product/108828309"
}

response = client.query(query: query, variables: variables)
const client = new shopify.clients.Graphql({session});
const data = await client.query({
  data: {
    "query": `mutation productUpdateMedia($media: [UpdateMediaInput!]!, $productId: ID!) {
      productUpdateMedia(media: $media, productId: $productId) {
        media {
          alt
        }
      }
    }`,
    "variables": {
      "media": [
        {
          "alt": "Some alt text",
          "id": "gid://shopify/Video/723685877"
        },
        {
          "alt": "Some more alt text",
          "id": "gid://shopify/MediaImage/853695510"
        }
      ],
      "productId": "gid://shopify/Product/108828309"
    },
  },
});
use Shopify\Clients\Graphql;

$client = new Graphql("your-development-store.myshopify.com", $accessToken);
$query = <<<QUERY
  mutation productUpdateMedia($media: [UpdateMediaInput!]!, $productId: ID!) {
    productUpdateMedia(media: $media, productId: $productId) {
      media {
        alt
      }
    }
  }
QUERY;

$variables = [
  "media" => [{"alt"=>"Some alt text", "id"=>"gid://shopify/Video/723685877"}, {"alt"=>"Some more alt text", "id"=>"gid://shopify/MediaImage/853695510"}],
  "productId" => "gid://shopify/Product/108828309",
];

$response = $client->query(["query" => $query, "variables" => $variables]);
Hide code
Input variables
Copy
{
  "media": [
    {
      "alt": "Some alt text",
      "id": "gid://shopify/Video/723685877"
    },
    {
      "alt": "Some more alt text",
      "id": "gid://shopify/MediaImage/853695510"
    }
  ],
  "productId": "gid://shopify/Product/108828309"
}
Hide code
Response
JSON
{
  "productUpdateMedia": {
    "media": [
      {
        "alt": "Some alt text"
      },
      {
        "alt": "Some more alt text"
      }
    ]
  }
}