Variable listingsFeedSchemaV2Const
listingsFeedSchemaV2: {
$comment: "JSON Schema describing the document format for JSON Selling Partner Listings Feeds (v2).";
properties: {
header: {
description: "Header information about the feed submission.";
properties: {
issueLocale: {
description: "Locale for issue localization. When not provided, the default language code of the first marketplace is used. Examples: \"en_US\", \"fr_CA\", \"fr_FR\". Localized messages default to \"en_US\" when a localization is not available in the specified locale.";
title: "Issue Locale";
type: "string";
};
sellerId: {
description: "Identifier for the Selling Partner, such as the Merchant Account or Vendor Code.";
title: "Selling Partner Identifier";
type: "string";
};
version: {
const: "2.0";
description: "Version of the JSON Selling Partner Listings Feeds specification used for the feed submission.";
title: "Feed Version";
type: "string";
};
};
required: readonly ["sellerId", "version"];
title: "Feed Header";
type: "object";
};
messages: {
description: "Messages containing listings data submissions for the Selling Partner.";
items: {
description: "Message containing an individual listings data submission.";
oneOf: readonly [
{
$comment: "\"UPDATE\" operations require a \"productType\" and \"attributes\"; \"patches\" are not applicable to \"UPDATE\" operations.";
properties: {
operationType: { const: "UPDATE"; type: "string" };
patches: false;
};
required: readonly ["productType", "attributes"];
},
{
$comment: "\"requirements\", \"attributes\", \"productType\", and \"patches\" are not applicable to \"DELETE\" operations.";
properties: {
attributes: false;
operationType: { const: "DELETE"; type: "string" };
patches: false;
productType: false;
requirements: false;
};
},
{
$comment: "\"PARTIAL_UPDATE\" operations require a \"productType\" and \"attributes\"; \"requirements\" and \"patches\" are not applicable to \"PARTIAL_UPDATE\" operations.";
properties: {
operationType: { const: "PARTIAL_UPDATE"; type: "string" };
patches: false;
requirements: false;
};
required: readonly ["productType", "attributes"];
},
{
$comment: "\"PATCH\" operations require a \"productType\" and \"patches\"; \"requirements\" and \"attributes\" are not applicable to \"PATCH\" operations.";
properties: {
attributes: false;
operationType: { const: "PATCH"; type: "string" };
requirements: false;
};
required: readonly ["productType", "patches"];
},
];
properties: {
attributes: {
additionalProperties: true;
description: "Attributes data for the listings data submission.";
minProperties: 1;
title: "Listings Item Attributes";
type: "object";
};
messageId: {
description: "Identifier for the message that is unique within this feed submission. Response messages are correlated to this identifier.";
examples: readonly [1];
maximum: 2147483647;
minimum: 1;
title: "Message Identifier";
type: "integer";
};
operationType: {
description: "Type of operation to perform for the listings data submission in this message. \"UPDATE\" indicates the full set of item attributes are provided and any existing attributes data will be replaced with the provided attributes. \"PARTIAL_UPDATE\" indicates only the provided item attributes will be updated with the provided attribute data. \"PATCH\" indicates the provided JSON Patch operations will be used to update the applicable attributes. \"DELETE\" indicates the listings item will be deleted. \"PARTIAL_UPDATE\" is equivalent to using \"PATCH\" with the \"replace\" op.";
enum: readonly ["UPDATE", "PARTIAL_UPDATE", "PATCH", "DELETE"];
title: "Operation Type";
type: "string";
};
patches: {
description: "Attributes data in the form of JSON Patch operations to update or delete.";
items: {
description: "Individual JSON Patch operation.";
properties: {
op: {
description: "Type of JSON Patch operation. Supported JSON Patch operations include add, replace, and delete. See https://tools.ietf.org/html/rfc6902.";
enum: readonly ["add", "replace", "delete"];
example: "replace";
type: "string";
};
path: {
description: "JSON Pointer path of the attribute to patch. See https://tools.ietf.org/html/rfc6902.";
example: "/attributes/fulfillment_availability";
type: "string";
};
value: {
description: "JSON value to add, replace, or delete.";
example: readonly [
{ fulfillment_channel_code: ...; quantity: ... },
];
items: { additionalProperties: true; type: "object" };
type: "array";
};
};
required: readonly ["op", "path"];
type: "object";
};
minItems: 1;
title: "Listings Item JSON Patch Operations";
type: "array";
};
productType: {
description: "Amazon product type of the listings data submission in this message.";
examples: readonly ["LUGGAGE", "SHOES"];
minLength: 1;
title: "Amazon Product Type";
type: "string";
};
requirements: {
default: "LISTING";
description: "Name of the requirements type for the listings data submission in this message. \"LISTING\" indicates requirements inclusive of product facts and sales terms. \"LISTING_PRODUCT_ONLY\" indicates requirements inclusive of product facts only. \"LISTING_OFFER_ONLY\" indicates requirements inclusive of sales terms only.";
enum: readonly [
"LISTING",
"LISTING_PRODUCT_ONLY",
"LISTING_OFFER_ONLY",
];
title: "Requirements";
type: "string";
};
sku: {
description: "Selling Partner SKU (stock keeping unit) identifier for the listing. SKU uniquely identifies a listing for a Selling Partner.";
examples: readonly ["ABC123"];
minLength: 1;
title: "SKU (Stock Keeping Unit)";
type: "string";
};
};
required: readonly ["messageId", "sku", "operationType"];
title: "Feed Message";
type: "object";
};
maxItems: 10000;
minItems: 1;
title: "Feed Messages";
type: "array";
};
};
required: readonly ["header", "messages"];
title: "Selling Partner Listings Feed (v2)";
type: "object";
} = ...
Type declaration
Readonly
$comment: "JSON Schema describing the document format for JSON Selling Partner Listings Feeds (v2)."
Readonly
properties: {
header: {
description: "Header information about the feed submission.";
properties: {
issueLocale: {
description: "Locale for issue localization. When not provided, the default language code of the first marketplace is used. Examples: \"en_US\", \"fr_CA\", \"fr_FR\". Localized messages default to \"en_US\" when a localization is not available in the specified locale.";
title: "Issue Locale";
type: "string";
};
sellerId: {
description: "Identifier for the Selling Partner, such as the Merchant Account or Vendor Code.";
title: "Selling Partner Identifier";
type: "string";
};
version: {
const: "2.0";
description: "Version of the JSON Selling Partner Listings Feeds specification used for the feed submission.";
title: "Feed Version";
type: "string";
};
};
required: readonly ["sellerId", "version"];
title: "Feed Header";
type: "object";
};
messages: {
description: "Messages containing listings data submissions for the Selling Partner.";
items: {
description: "Message containing an individual listings data submission.";
oneOf: readonly [
{
$comment: "\"UPDATE\" operations require a \"productType\" and \"attributes\"; \"patches\" are not applicable to \"UPDATE\" operations.";
properties: {
operationType: { const: "UPDATE"; type: "string" };
patches: false;
};
required: readonly ["productType", "attributes"];
},
{
$comment: "\"requirements\", \"attributes\", \"productType\", and \"patches\" are not applicable to \"DELETE\" operations.";
properties: {
attributes: false;
operationType: { const: "DELETE"; type: "string" };
patches: false;
productType: false;
requirements: false;
};
},
{
$comment: "\"PARTIAL_UPDATE\" operations require a \"productType\" and \"attributes\"; \"requirements\" and \"patches\" are not applicable to \"PARTIAL_UPDATE\" operations.";
properties: {
operationType: { const: "PARTIAL_UPDATE"; type: "string" };
patches: false;
requirements: false;
};
required: readonly ["productType", "attributes"];
},
{
$comment: "\"PATCH\" operations require a \"productType\" and \"patches\"; \"requirements\" and \"attributes\" are not applicable to \"PATCH\" operations.";
properties: {
attributes: false;
operationType: { const: "PATCH"; type: "string" };
requirements: false;
};
required: readonly ["productType", "patches"];
},
];
properties: {
attributes: {
additionalProperties: true;
description: "Attributes data for the listings data submission.";
minProperties: 1;
title: "Listings Item Attributes";
type: "object";
};
messageId: {
description: "Identifier for the message that is unique within this feed submission. Response messages are correlated to this identifier.";
examples: readonly [1];
maximum: 2147483647;
minimum: 1;
title: "Message Identifier";
type: "integer";
};
operationType: {
description: "Type of operation to perform for the listings data submission in this message. \"UPDATE\" indicates the full set of item attributes are provided and any existing attributes data will be replaced with the provided attributes. \"PARTIAL_UPDATE\" indicates only the provided item attributes will be updated with the provided attribute data. \"PATCH\" indicates the provided JSON Patch operations will be used to update the applicable attributes. \"DELETE\" indicates the listings item will be deleted. \"PARTIAL_UPDATE\" is equivalent to using \"PATCH\" with the \"replace\" op.";
enum: readonly ["UPDATE", "PARTIAL_UPDATE", "PATCH", "DELETE"];
title: "Operation Type";
type: "string";
};
patches: {
description: "Attributes data in the form of JSON Patch operations to update or delete.";
items: {
description: "Individual JSON Patch operation.";
properties: {
op: {
description: "Type of JSON Patch operation. Supported JSON Patch operations include add, replace, and delete. See https://tools.ietf.org/html/rfc6902.";
enum: readonly ["add", "replace", "delete"];
example: "replace";
type: "string";
};
path: {
description: "JSON Pointer path of the attribute to patch. See https://tools.ietf.org/html/rfc6902.";
example: "/attributes/fulfillment_availability";
type: "string";
};
value: {
description: "JSON value to add, replace, or delete.";
example: readonly [{ fulfillment_channel_code: ...; quantity: ... }];
items: { additionalProperties: true; type: "object" };
type: "array";
};
};
required: readonly ["op", "path"];
type: "object";
};
minItems: 1;
title: "Listings Item JSON Patch Operations";
type: "array";
};
productType: {
description: "Amazon product type of the listings data submission in this message.";
examples: readonly ["LUGGAGE", "SHOES"];
minLength: 1;
title: "Amazon Product Type";
type: "string";
};
requirements: {
default: "LISTING";
description: "Name of the requirements type for the listings data submission in this message. \"LISTING\" indicates requirements inclusive of product facts and sales terms. \"LISTING_PRODUCT_ONLY\" indicates requirements inclusive of product facts only. \"LISTING_OFFER_ONLY\" indicates requirements inclusive of sales terms only.";
enum: readonly [
"LISTING",
"LISTING_PRODUCT_ONLY",
"LISTING_OFFER_ONLY",
];
title: "Requirements";
type: "string";
};
sku: {
description: "Selling Partner SKU (stock keeping unit) identifier for the listing. SKU uniquely identifies a listing for a Selling Partner.";
examples: readonly ["ABC123"];
minLength: 1;
title: "SKU (Stock Keeping Unit)";
type: "string";
};
};
required: readonly ["messageId", "sku", "operationType"];
title: "Feed Message";
type: "object";
};
maxItems: 10000;
minItems: 1;
title: "Feed Messages";
type: "array";
};
}
Readonly
required: readonly ["header", "messages"]
Readonly
title: "Selling Partner Listings Feed (v2)"
Readonly
type: "object"