Index
-
LocalInventoryService(interface) -
RegionalInventoryService(interface) -
DeleteLocalInventoryRequest(message) -
DeleteRegionalInventoryRequest(message) -
InsertLocalInventoryRequest(message) -
InsertRegionalInventoryRequest(message) -
ListLocalInventoriesRequest(message) -
ListLocalInventoriesResponse(message) -
ListRegionalInventoriesRequest(message) -
ListRegionalInventoriesResponse(message) -
LocalInventory(message) -
LocalInventoryAttributes(message) -
LocalInventoryAttributes.Availability(enum) -
LocalInventoryAttributes.PickupMethod(enum) -
LocalInventoryAttributes.PickupSla(enum) -
RegionalInventory(message) -
RegionalInventoryAttributes(message) -
RegionalInventoryAttributes.Availability(enum)
LocalInventoryService
Service to manage local inventory for products
rpc DeleteLocalInventory(
DeleteLocalInventoryRequest
) returns ( Empty
)
Deletes the specified LocalInventory
from the given product in your merchant account. It might take a up to an hour for the LocalInventory
to be deleted from the specific product. Once you have received a successful delete response, wait for that period before attempting a delete again.
- Authorization scopes
-
Requires the following OAuth scope:
-
https://www.googleapis.com/auth/content
For more information, see the OAuth 2.0 Overview .
-
rpc InsertLocalInventory(
InsertLocalInventoryRequest
) returns ( LocalInventory
)
Inserts a LocalInventory
resource to a product in your merchant account.
Replaces the full LocalInventory
resource if an entry with the same
already exists for the product.storeCode
It might take up to 30 minutes for the new or updated LocalInventory
resource to appear in products.
- Authorization scopes
-
Requires the following OAuth scope:
-
https://www.googleapis.com/auth/content
For more information, see the OAuth 2.0 Overview .
-
rpc ListLocalInventories(
ListLocalInventoriesRequest
) returns ( ListLocalInventoriesResponse
)
Lists the LocalInventory
resources for the given product in your merchant account. The response might contain fewer items than specified by pageSize
. If pageToken
was returned in previous request, it can be used to obtain additional results.
LocalInventory
resources are listed per product for a given account.
- Authorization scopes
-
Requires the following OAuth scope:
-
https://www.googleapis.com/auth/content
For more information, see the OAuth 2.0 Overview .
-
RegionalInventoryService
Service to manage regional inventory for products. There is also separate regions
resource and API to manage regions definitions.
rpc DeleteRegionalInventory(
DeleteRegionalInventoryRequest
) returns ( Empty
)
Deletes the specified RegionalInventory
resource from the given product in your merchant account. It might take up to an hour for the RegionalInventory
to be deleted from the specific product. Once you have received a successful delete response, wait for that period before attempting a delete again.
- Authorization scopes
-
Requires the following OAuth scope:
-
https://www.googleapis.com/auth/content
For more information, see the OAuth 2.0 Overview .
-
rpc InsertRegionalInventory(
InsertRegionalInventoryRequest
) returns ( RegionalInventory
)
Inserts a RegionalInventory
to a given product in your merchant account.
Replaces the full RegionalInventory
resource if an entry with the same
already exists for the product.region
It might take up to 30 minutes for the new or updated RegionalInventory
resource to appear in products.
- Authorization scopes
-
Requires the following OAuth scope:
-
https://www.googleapis.com/auth/content
For more information, see the OAuth 2.0 Overview .
-
rpc ListRegionalInventories(
ListRegionalInventoriesRequest
) returns ( ListRegionalInventoriesResponse
)
Lists the RegionalInventory
resources for the given product in your merchant account. The response might contain fewer items than specified by pageSize
. If pageToken
was returned in previous request, it can be used to obtain additional results.
RegionalInventory
resources are listed per product for a given account.
- Authorization scopes
-
Requires the following OAuth scope:
-
https://www.googleapis.com/auth/content
For more information, see the OAuth 2.0 Overview .
-
DeleteLocalInventoryRequest
Request message for the DeleteLocalInventory
method.
name
string
Required. The name of the local inventory for the given product to delete. Format: accounts/{account}/products/{product}/localInventories/{store_code}
The {product}
segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: content_language~feed_label~offer_id
. Example: en~US~sku123
For legacy local products, the structure is: local~content_language~feed_label~offer_id
. Example: local~en~US~sku123
The format of the {product}
segment in the URL is automatically detected by the server, supporting two options:
-
Encoded Format: The
{product}segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in thecontent_language~feed_label~offer_idstructure. This encoding MUST be used if any part of the product identifier (likeoffer_id) contains characters such as/,%, or~.- Example: To represent the product ID
en~US~sku/123forstore_code"store123", the{product}segment must be the base64url encoding of this string, which isZW5-VVMtc2t1LzEyMw. The full resource name for the local inventory would beaccounts/123/products/ZW5-VVMtc2t1LzEyMw/localInventories/store123.
- Example: To represent the product ID
-
Plain Format: The
{product}segment is the tilde-separated stringcontent_language~feed_label~offer_id. This format is suitable only whencontent_language,feed_label, andoffer_iddo not contain URL-problematic characters like/,%, or~.
We recommend using the Encoded Formatfor all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde ( ~
) characters in the {product}
segment is used to differentiate between the two formats.
Note: For calls to the v1beta version, the plain format for the product segment is channel~content_language~feed_label~offer_id
. For example, the full resource name for a local inventory at store_code
"store123" would be: accounts/123/products/online~en~US~sku123/localInventories/store123
.
DeleteRegionalInventoryRequest
Request message for the DeleteRegionalInventory
method.
name
string
Required. The name of the RegionalInventory
resource to delete. Format: accounts/{account}/products/{product}/regionalInventories/{region}
The {product}
segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: content_language~feed_label~offer_id
. Example: en~US~sku123
For legacy local products, the structure is: local~content_language~feed_label~offer_id
. Example: local~en~US~sku123
The format of the {product}
segment in the URL is automatically detected by the server, supporting two options:
-
Encoded Format: The
{product}segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in thecontent_language~feed_label~offer_idstructure. This encoding MUST be used if any part of the product identifier (likeoffer_id) contains characters such as/,%, or~.- Example: To represent the product ID
en~US~sku/123forregion"region123", the{product}segment must be the base64url encoding of this string, which isZW5-VVMtc2t1LzEyMw. The full resource name for the regional inventory would beaccounts/123/products/ZW5-VVMtc2t1LzEyMw/regionalInventories/region123.
- Example: To represent the product ID
-
Plain Format: The
{product}segment is the tilde-separated stringcontent_language~feed_label~offer_id. This format is suitable only whencontent_language,feed_label, andoffer_iddo not contain URL-problematic characters like/,%, or~.
We recommend using the Encoded Formatfor all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde ( ~
) characters in the {product}
segment is used to differentiate between the two formats.
Note: For calls to the v1beta version, the plain format for the product segment is channel~content_language~feed_label~offer_id
. For example, the full resource name for a regional inventory in region
"region123" would be: accounts/123/products/online~en~US~sku123/regionalInventories/region123
.
InsertLocalInventoryRequest
Request message for the InsertLocalInventory
method.
parent
string
Required. The account and product where this inventory will be inserted. Format: accounts/{account}/products/{product}
The {product}
segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: content_language~feed_label~offer_id
. Example: en~US~sku123
For legacy local products, the structure is: local~content_language~feed_label~offer_id
. Example: local~en~US~sku123
The format of the {product}
segment in the URL is automatically detected by the server, supporting two options:
-
Encoded Format: The
{product}segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in thecontent_language~feed_label~offer_idstructure. This encoding MUST be used if any part of the product identifier (likeoffer_id) contains characters such as/,%, or~.- Example: To represent the product ID
en~US~sku/123, the{product}segment must be the base64url encoding of this string, which isZW5-VVMtc2t1LzEyMw. The full resource name for the product would beaccounts/123/products/ZW5-VVMtc2t1LzEyMw.
- Example: To represent the product ID
-
Plain Format: The
{product}segment is the tilde-separated stringcontent_language~feed_label~offer_id. This format is suitable only whencontent_language,feed_label, andoffer_iddo not contain URL-problematic characters like/,%, or~.
We recommend using the Encoded Formatfor all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde ( ~
) characters in the {product}
segment is used to differentiate between the two formats.
Note: For calls to the v1beta version, the plain format is channel~content_language~feed_label~offer_id
, for example: accounts/123/products/online~en~US~sku123
.
local_inventory
Required. Local inventory information of the product. If the product already has a LocalInventory
resource for the same storeCode
, full replacement of the LocalInventory
resource is performed.
InsertRegionalInventoryRequest
Request message for the InsertRegionalInventory
method.
parent
string
Required. The account and product where this inventory will be inserted. Format: accounts/{account}/products/{product}
The {product}
segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: content_language~feed_label~offer_id
. Example: en~US~sku123
For legacy local products, the structure is: local~content_language~feed_label~offer_id
. Example: local~en~US~sku123
The format of the {product}
segment in the URL is automatically detected by the server, supporting two options:
-
Encoded Format: The
{product}segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in thecontent_language~feed_label~offer_idstructure. This encoding MUST be used if any part of the product identifier (likeoffer_id) contains characters such as/,%, or~.- Example: To represent the product ID
en~US~sku/123, the{product}segment must be the base64url encoding of this string, which isZW5-VVMtc2t1LzEyMw. The full resource name for the product would beaccounts/123/products/ZW5-VVMtc2t1LzEyMw.
- Example: To represent the product ID
-
Plain Format: The
{product}segment is the tilde-separated stringcontent_language~feed_label~offer_id. This format is suitable only whencontent_language,feed_label, andoffer_iddo not contain URL-problematic characters like/,%, or~.
We recommend using the Encoded Formatfor all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde ( ~
) characters in the {product}
segment is used to differentiate between the two formats.
Note: For calls to the v1beta version, the plain format is channel~content_language~feed_label~offer_id
, for example: accounts/123/products/online~en~US~sku123
.
regional_inventory
Required. Regional inventory information to add to the product. If the product already has a RegionalInventory
resource for the same region
, full replacement of the RegionalInventory
resource is performed.
ListLocalInventoriesRequest
Request message for the ListLocalInventories
method.
parent
string
Required. The name
of the parent product to list local inventories for. Format: accounts/{account}/products/{product}
The {product}
segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: content_language~feed_label~offer_id
. Example: en~US~sku123
For legacy local products, the structure is: local~content_language~feed_label~offer_id
. Example: local~en~US~sku123
The format of the {product}
segment in the URL is automatically detected by the server, supporting two options:
-
Encoded Format: The
{product}segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in thecontent_language~feed_label~offer_idstructure. This encoding MUST be used if any part of the product identifier (likeoffer_id) contains characters such as/,%, or~.- Example: To represent the product ID
en~US~sku/123, the{product}segment must be the base64url encoding of this string, which isZW5-VVMtc2t1LzEyMw. The full resource name for the product would beaccounts/123/products/ZW5-VVMtc2t1LzEyMw.
- Example: To represent the product ID
-
Plain Format: The
{product}segment is the tilde-separated stringcontent_language~feed_label~offer_id. This format is suitable only whencontent_language,feed_label, andoffer_iddo not contain URL-problematic characters like/,%, or~.
We recommend using the Encoded Formatfor all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde ( ~
) characters in the {product}
segment is used to differentiate between the two formats.
Note: For calls to the v1beta version, the plain format is channel~content_language~feed_label~offer_id
, for example: accounts/123/products/online~en~US~sku123
.
page_size
int32
The maximum number of LocalInventory
resources for the given product to return. The service returns fewer than this value if the number of inventories for the given product is less that than the pageSize
. The default value is 25000. The maximum value is 25000; If a value higher than the maximum is specified, then the pageSize
will default to the maximum
page_token
string
A page token, received from a previous ListLocalInventories
call. Provide the page token to retrieve the subsequent page.
When paginating, all other parameters provided to ListLocalInventories
must match the call that provided the page token. The token returned as nextPageToken
in the response to the previous request.
ListLocalInventoriesResponse
Response message for the ListLocalInventories
method.
| Fields | |
|---|---|
local_inventories[]
|
The |
next_page_token
|
A token, which can be sent as |
ListRegionalInventoriesRequest
Request message for the ListRegionalInventories
method.
parent
string
Required. The name
of the parent product to list RegionalInventory
resources for. Format: accounts/{account}/products/{product}
The {product}
segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: content_language~feed_label~offer_id
. Example: en~US~sku123
For legacy local products, the structure is: local~content_language~feed_label~offer_id
. Example: local~en~US~sku123
The format of the {product}
segment in the URL is automatically detected by the server, supporting two options:
-
Encoded Format: The
{product}segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in thecontent_language~feed_label~offer_idstructure. This encoding MUST be used if any part of the product identifier (likeoffer_id) contains characters such as/,%, or~.- Example: To represent the product ID
en~US~sku/123, the{product}segment must be the base64url encoding of this string, which isZW5-VVMtc2t1LzEyMw. The full resource name for the product would beaccounts/123/products/ZW5-VVMtc2t1LzEyMw.
- Example: To represent the product ID
-
Plain Format: The
{product}segment is the tilde-separated stringcontent_language~feed_label~offer_id. This format is suitable only whencontent_language,feed_label, andoffer_iddo not contain URL-problematic characters like/,%, or~.
We recommend using the Encoded Formatfor all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde ( ~
) characters in the {product}
segment is used to differentiate between the two formats.
Note: For calls to the v1beta version, the plain format is channel~content_language~feed_label~offer_id
, for example: accounts/123/products/online~en~US~sku123
.
page_size
int32
The maximum number of RegionalInventory
resources for the given product to return. The service returns fewer than this value if the number of inventories for the given product is less that than the pageSize
. The default value is 25000. The maximum value is 100000; If a value higher than the maximum is specified, then the pageSize
will default to the maximum.
page_token
string
A page token, received from a previous ListRegionalInventories
call. Provide the page token to retrieve the subsequent page.
When paginating, all other parameters provided to ListRegionalInventories
must match the call that provided the page token. The token returned as nextPageToken
in the response to the previous request.
ListRegionalInventoriesResponse
Response message for the ListRegionalInventories
method.
| Fields | |
|---|---|
regional_inventories[]
|
The |
next_page_token
|
A token, which can be sent as |
LocalInventory
Local inventory information for the product. Represents in-store information for a specific product at the store specified by
. For a list of all accepted attribute values, see the local product inventory data specification
.storeCode
name
string
Output only. The name of the LocalInventory
resource. Format: accounts/{account}/products/{product}/localInventories/{store_code}
The {product}
segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: content_language~feed_label~offer_id
. Example: en~US~sku123
For legacy local products, the structure is: local~content_language~feed_label~offer_id
. Example: local~en~US~sku123
The format of the {product}
segment in the URL is automatically detected by the server, supporting two options:
-
Encoded Format: The
{product}segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in thecontent_language~feed_label~offer_idstructure. This encoding MUST be used if any part of the product identifier (likeoffer_id) contains characters such as/,%, or~.- Example: To represent the product ID
en~US~sku/123forstore_code"store123", the{product}segment must be the base64url encoding of this string, which isZW5-VVMtc2t1LzEyMw. The full resource name for the local inventory would beaccounts/123/products/ZW5-VVMtc2t1LzEyMw/localInventories/store123.
- Example: To represent the product ID
-
Plain Format: The
{product}segment is the tilde-separated stringcontent_language~feed_label~offer_id. This format is suitable only whencontent_language,feed_label, andoffer_iddo not contain URL-problematic characters like/,%, or~.
We recommend using the Encoded Formatfor all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde ( ~
) characters in the {product}
segment is used to differentiate between the two formats.
Note: For calls to the v1beta version, the plain format for the product segment is channel~content_language~feed_label~offer_id
. For example, the full resource name for a local inventory at store_code
"store123" would be: accounts/123/products/online~en~US~sku123/localInventories/store123
.
account
int64
Output only. The account that owns the product. This field will be ignored if set by the client.
store_code
string
Required. Immutable. Store code (the store ID from your Business Profile) of the physical store the product is sold in. See the Local product inventory data specification for more information.
local_inventory_attributes
Optional. A list of local inventory attributes.
LocalInventoryAttributes
Local inventory attributes.
| Fields | |
|---|---|
price
|
Optional. Price of the product at this store. |
sale_price
|
Optional. Sale price of the product at this store. Mandatory if [ |
sale_price_effective_date
|
Optional. The |
availability
|
Availability of the product at this store. |
quantity
|
Optional. Quantity of the product available at this store. Must be greater than or equal to zero. |
pickup_method
|
Optional. Supported pickup method
for this product. Unless the value is |
pickup_sla
|
Optional. Relative time period from the order date for an order for this product, from this store, to be ready for pickup. Must be submitted with |
instore_product_location
|
Optional. Location of the product inside the store. Maximum length is 20 bytes. |
Availability
Availability of the product at this store.
| Enums | |
|---|---|
LOCAL_INVENTORY_AVAILABILITY_UNSPECIFIED
|
Indicates that the availability is unspecified. |
IN_STOCK
|
Indicates that the product is in stock. |
LIMITED_AVAILABILITY
|
Indicates that the product is out of stock. |
ON_DISPLAY_TO_ORDER
|
Indicates that the product is on display to order. |
OUT_OF_STOCK
|
Indicates that the product is out of stock. |
PickupMethod
Supported pickup method
for this product. Unless the value is "not supported"
, this field must be submitted together with pickupSla
.
| Enums | |
|---|---|
PICKUP_METHOD_UNSPECIFIED
|
Indicates that the pickup method is unspecified. |
BUY
|
Indicates that the pickup method is Buy. |
RESERVE
|
Indicates that the pickup method is Reserve. |
SHIP_TO_STORE
|
Indicates that the pickup method is Ship to store. |
NOT_SUPPORTED
|
Indicates that the pickup method is not supported. |
PickupSla
Relative time period from the order date for an order for this product, from this store, to be ready for pickup. Must be submitted with pickupMethod
. See more details here
.
| Enums | |
|---|---|
PICKUP_SLA_UNSPECIFIED
|
Indicates that the pickup SLA is unspecified. |
SAME_DAY
|
Indicates that the pickup SLA is same day. |
NEXT_DAY
|
Indicates that the pickup SLA is next day. |
TWO_DAY
|
Indicates that the pickup SLA is two days. |
THREE_DAY
|
Indicates that the pickup SLA is three days. |
FOUR_DAY
|
Indicates that the pickup SLA is four days. |
FIVE_DAY
|
Indicates that the pickup SLA is five days. |
SIX_DAY
|
Indicates that the pickup SLA is six days. |
SEVEN_DAY
|
Indicates that the pickup SLA is seven days. |
MULTI_WEEK
|
Indicates that the pickup SLA is multi-week. |
RegionalInventory
Regional inventory information for the product. Represents specific information like price and availability for a given product in a specific
. For a list of all accepted attribute values, see the regional product inventory data specification
.region
name
string
Output only. The name of the RegionalInventory
resource. Format: accounts/{account}/products/{product}/regionalInventories/{region}
The {product}
segment is a unique identifier for the product. This identifier must be unique within a merchant account and generally follows the structure: content_language~feed_label~offer_id
. Example: en~US~sku123
For legacy local products, the structure is: local~content_language~feed_label~offer_id
. Example: local~en~US~sku123
The format of the {product}
segment in the URL is automatically detected by the server, supporting two options:
-
Encoded Format: The
{product}segment is an unpadded base64url encoded string (RFC 4648 Section 5). The decoded string must result in thecontent_language~feed_label~offer_idstructure. This encoding MUST be used if any part of the product identifier (likeoffer_id) contains characters such as/,%, or~.- Example: To represent the product ID
en~US~sku/123forregion"region123", the{product}segment must be the base64url encoding of this string, which isZW5-VVMtc2t1LzEyMw. The full resource name for the regional inventory would beaccounts/123/products/ZW5-VVMtc2t1LzEyMw/regionalInventories/region123.
- Example: To represent the product ID
-
Plain Format: The
{product}segment is the tilde-separated stringcontent_language~feed_label~offer_id. This format is suitable only whencontent_language,feed_label, andoffer_iddo not contain URL-problematic characters like/,%, or~.
We recommend using the Encoded Formatfor all product IDs to ensure correct parsing, especially those containing special characters. The presence of tilde ( ~
) characters in the {product}
segment is used to differentiate between the two formats.
Note: For calls to the v1beta version, the plain format for the product segment is channel~content_language~feed_label~offer_id
. For example, the full resource name for a regional inventory in region
"region123" would be: accounts/123/products/online~en~US~sku123/regionalInventories/region123
.
account
int64
Output only. The account that owns the product. This field will be ignored if set by the client.
region
string
Required. Immutable. ID of the region for this RegionalInventory
resource. See the Regional availability and pricing
for more details.
regional_inventory_attributes
Optional. A list of regional inventory attributes.
RegionalInventoryAttributes
Regional inventory attributes.
| Fields | |
|---|---|
price
|
Optional. Price of the product in this region. |
sale_price
|
Optional. Sale price of the product in this region. Mandatory if [ |
sale_price_effective_date
|
Optional. The |
availability
|
Optional. Availability of the product in this region. |
Availability
Availability of the product in this region.
| Enums | |
|---|---|
REGIONAL_INVENTORY_AVAILABILITY_UNSPECIFIED
|
Indicates that the availability is unspecified. |
IN_STOCK
|
Indicates that the product is in stock. |
OUT_OF_STOCK
|
Indicates that the product is out of stock. |

