rocket
Meet
Merchant API
- the official successor to Content API for Shopping.
update
Get the latest
on new Merchant API features, bug fixes, and updates.
add_alert
Note: Content API for Shopping will be sunset on August 18, 2026.
Product IDs
Stay organized with collections
Save and categorize content based on your preferences.
Here are the different kinds of product IDs in the Content API for Shopping:
- Offer ID
- An
offerId
is a string assigned to a product by a merchant. This ID
represents an individual product.
offerId
is unique to the set of offers in the Merchant Center database, and
is usually a numeric sequential number.
offerId
can be an internal SKU number that a merchant assigns to the product.
- REST ID
- A REST ID is the unique identifier for a product assigned by Google.
- REST ID is the
productId
for REST API calls.
REST IDs are aggregates with the format online:en:label:1111111111
. The
REST ID consists of the following 4 parts, separated by colons:
- Channel ("online" or "local")
- Content Language (using the 2-letter designation, for example
en
or fr
)
- Feed label (might be the two-letter code for the feed's target country, for example
US
or FR
)
- Offer ID
You put this together as channel:contentLanguage:feedLabel:offerId
, for
example, online:en:US:1111111111
.
- External Seller ID (Marketplaces)
Marketplaces
must assign an external_seller_id
to offers uploaded to a multi-seller
account. This field represents an individual seller.
external_seller_id
values are case-sensitive, and must meet the following
criteria:
- 1-50 characters in length
- Only alphanumeric ASCII characters, and underscore (_), hyphen (-),
period (.), and tilde (~)
This isn't the same as the internal
seller_id
field.
The following table summarizes some of the IDs that can be associated with a
product:
Attribute |
Description |
Example |
Notes |
offerId |
An ID assigned to a product by a merchant. |
1111111111 |
String data type, unique identifier for a product's offer. |
REST ID |
An ID assigned to a product by Google. In the format channel:contentLanguage:feedLabel:offerId . |
online:en:label:1111111111 |
Full ID including offerId . |
productId |
Used to refer to the REST ID in API calls. |
online:en:label:1111111111 |
This is the REST ID of a product. |
id |
Same value as REST ID and productId . |
online:en:label:1111111111 |
Used inside JSON body of a product to refer to its productId . |
external_seller_id |
A seller ID chosen by the Marketplace. |
example-Seller1 |
Required for multi-seller accounts. Must be 1-50
characters. Case-sensitive. Digits, and special characters _, -, ., and ~
are accepted.
|
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-08-13 UTC.
[null,null,["Last updated 2025-08-13 UTC."],[[["\u003cp\u003eThe Merchant API is the new version of the Content API for Shopping and represents the future of product data integration with Google.\u003c/p\u003e\n"],["\u003cp\u003eThe beta version of the Merchant API is now available for developers to explore and help shape its future development.\u003c/p\u003e\n"],["\u003cp\u003eDevelopers can learn more about the benefits and features of the Merchant API, including how it can enhance integrations, in the official announcement blog post.\u003c/p\u003e\n"],["\u003cp\u003eProducts in the Merchant API are identified using various IDs, such as \u003ccode\u003eofferId\u003c/code\u003e, REST ID, \u003ccode\u003eproductId\u003c/code\u003e, and \u003ccode\u003eexternal_seller_id\u003c/code\u003e, each with specific characteristics and usage contexts.\u003c/p\u003e\n"],["\u003cp\u003eA comprehensive table provides detailed explanations and examples of different product ID attributes, outlining their purpose and format.\u003c/p\u003e\n"]]],["The beta version of the Merchant API, the new Content API for Shopping, is introduced. Merchants assign an `offerId` to products. Google assigns a unique REST ID in the format `channel:contentLanguage:feedLabel:offerId`; this is also the `productId` and `id` in API calls. Marketplaces assign `external_seller_id` to offers for multi-seller accounts, it has specific format requirements. The Merchant API offers integration improvements; details on this and providing feedback are available via a linked article.\n"],null,["# Product IDs\n\nHere are the different kinds of product IDs in the Content API for Shopping:\n\nOffer ID\n: An `offerId` is a string assigned to a product by a merchant. This ID\n represents an individual product.\n: `offerId` is unique to the set of offers in the Merchant Center database, and\n is usually a numeric sequential number.\n: `offerId` can be an internal SKU number that a merchant assigns to the product.\n\nREST ID\n: A REST ID is the unique identifier for a product assigned by Google.\n: REST ID is the `productId` for REST API calls.\n\n: REST IDs are aggregates with the format `online:en:label:1111111111`. The\n REST ID consists of the following 4 parts, separated by colons:\n\n 1. Channel (\"online\" or \"local\")\n 2. Content Language (using the 2-letter designation, for example `en` or `fr`)\n 3. Feed label (might be the two-letter code for the feed's target country, for example `US` or `FR`)\n 4. Offer ID\n\n: You put this together as `channel:contentLanguage:feedLabel:offerId`, for\n example, `online:en:US:1111111111`.\n\nExternal Seller ID (Marketplaces)\n\n: [Marketplaces](//support.google.com/merchants/answer/6363319)\n must assign an `external_seller_id` to offers uploaded to a multi-seller\n account. This field represents an individual seller.\n\n `external_seller_id` values are case-sensitive, and must meet the following\n criteria:\n\n - 1-50 characters in length\n - Only alphanumeric ASCII characters, and underscore (_), hyphen (-), period (.), and tilde (\\~)\n\n This isn't the same as the internal\n [`seller_id`](/shopping-content/reference/rest/v2.1/accounts) field.\n\nThe following table summarizes some of the IDs that can be associated with a\nproduct:\n\n| Attribute | Description | Example | Notes |\n|----------------------|---------------------------------------------------------------------------------------------------|------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------|\n| `offerId` | An ID assigned to a product by a merchant. | `1111111111` | String data type, unique identifier for a product's offer. |\n| REST ID | An ID assigned to a product by Google. In the format `channel:contentLanguage:feedLabel:offerId`. | `online:en:label:1111111111` | Full ID including `offerId`. |\n| `productId` | Used to refer to the REST ID in API calls. | `online:en:label:1111111111` | This is the REST ID of a product. |\n| `id` | Same value as REST ID and `productId`. | `online:en:label:1111111111` | Used inside JSON body of a product to refer to its `productId`. |\n| `external_seller_id` | A seller ID chosen by the Marketplace. | `example-Seller1` | Required for multi-seller accounts. Must be 1-50 characters. Case-sensitive. Digits, and special characters _, -, ., and \\~ are accepted. |"]]