Download OpenAPI specification:Download
The Catalog Data Ingestion API allows you to create and manage products and price books and directly integrate catalog data with the Commerce catalog service.
This API provides the following resource collections to create and update catalog data:
Product attribute metadata allows you to define how to display product attributes on the storefront, define search characteristics, and so on.
Create or replace existing product attribute metadata resources.
To update existing product attribute metadata, use the update operation.
DATA_SPACE_ID required | string The data space ID for the data space where commerce catalog data is stored. See SaaS configuration in Adobe Experience League. |
All items in the request are accepted for further processing.
Request rejected. Some of the received items are invalid. Check the "message" and "errors" fields for details.
Unauthorized request. Verify the x-api-key
and make sure that the JWT in x-gw-signature
is still valid.
Add product attribute information to a product.
[- {
- "code": "name",
- "scope": {
- "locale": "en"
}, - "label": "Product Name",
- "dataType": "TEXT",
- "visibleIn": [
- "PRODUCT_DETAIL"
], - "filterable": false,
- "sortable": false,
- "searchable": true,
- "searchWeight": 55,
- "searchTypes": [
- "AUTOCOMPLETE"
]
}
]
{- "status": "ACCEPTED",
- "acceptedCount": 4
}
Update existing product attribute metadata with new values.
When the update is processed, the merge strategy is used to apply changes to scalar
and object
type fields. The replace strategy is used to apply changes for fields in an array
.
DATA_SPACE_ID required | string The data space ID for the data space where commerce catalog data is stored. See SaaS configuration in Adobe Experience League. |
All items in the request are accepted for further processing.
Request rejected. Some of the received items are invalid. Check the "invalidFeedItems" node for specific errors.
Unauthorized request. Verify the x-api-key
and make sure that the JWT in x-gw-signature
is still valid.
Update existing product attribute metadata with new values.
Note that fields with the array
type will replace existing data.
Example bellow updates the following attributes:
label
- Change the product attribute label.visibleIn
- Add PRODUCT_LISTING
role to the product attribute.[- {
- "code": "name",
- "scope": {
- "locale": "en"
}, - "label": "Updated - Product Name",
- "visibleIn": [
- "PRODUCT_DETAIL",
- "PRODUCT_LISTING"
]
}
]
{- "status": "ACCEPTED",
- "acceptedCount": 4
}
Remove product attribute metadata resources from the catalog data.
All items in the request are accepted for further processing.
Some received items are invalid. Check the ‘invalidFeedItems’ node for specific errors.
Unauthorized request. Verify the ‘x-api-key’ and make sure that the JWT in ‘x-gw-signature’ is still valid.
Marks existing product attribute metadata as deleted.
[- {
- "code": "name",
- "scope": {
- "locale": "en"
}
}
]
{- "status": "ACCEPTED",
- "acceptedCount": 4
}
Use the update operation to modify values for an existing product.
To create a configurable product, you need the following:
VARIANT_OF
must be defined for product variants.Each product variant links back to the configurable product through its variantReferenceId
, which corresponds to specific options[].values[].id
in the configurable product.
To unassign a product variant from a configurable product, do one of the following:
null
and unassign the product variant from the configurable product by removing the "links" association.DATA_SPACE_ID required | string Data Space ID. See SaaS data space provisioning in Adobe Experience League. |
All items accepted and will be processed asynchronously
One or all received items are invalid. Check the "invalidFeedItems" node for details
Unauthorized request. Verify the x-api-key
value is correct and ensure the JWT is not expired in x-gw-signature
.
Create a simple product with required and optional fields.
[- {
- "sku": "red-pants",
- "scope": {
- "locale": "en"
}, - "name": "red pants",
- "slug": "red-pants.html",
- "status": "ENABLED",
- "description": "long description about red pants",
- "shortDescription": "just pants",
- "visibleIn": [
- "CATALOG",
- "SEARCH"
], - "metaTags": {
- "title": "Yoga pants ",
- "description": "Climb with Zeppelin Yoga Pant",
- "keywords": [
- "pants",
- "yoga"
]
}, - "attributes": [
- {
- "code": "cost",
- "type": "NUMBER",
- "values": [
- "10.5"
]
}, - {
- "code": "states",
- "type": "ARRAY",
- "values": [
- "TX",
- "CA"
]
}
], - "images": [
- {
- "label": "photo of my pants!",
- "roles": [
- "BASE",
- "SMALL"
], - "customRoles": [
- "widget"
]
}
], - "routes": [
- {
- "path": "red-pants"
}, - {
- "path": "pants/red-pants",
- "position": 1
}
]
}
]
{- "status": "ACCEPTED",
- "acceptedCount": 4
}
Update products with specified "sku" and "scope" to replace existing field data with the data supplied in the request.
When the update is processed, the merge strategy is used to apply changes to scalar
and object
type fields.
The replace strategy is used to apply changes for fields in an array
.
DATA_SPACE_ID required | string Data Space ID. See SaaS data space provisioning in Adobe Experience League. |
All items accepted and will be processed asynchronously
One or all received items are invalid. Check the "invalidFeedItems" node for details
Unauthorized request. Verify the x-api-key
value is correct and ensure the JWT is not expired in x-gw-signature
.
Update a simple product with the values provided in the request.
On update, changes to scalar
and object
type fields are applied using the merge strategy.
The replace strategy is used to apply changes for fields in an array
.
In the example below, the following attributes are updated.
name
- Change the product name.metaTags.title
- Change the title of the product detail page.attributes
- Add a new state, NM
to the states
attribute.[- {
- "sku": "red-pants",
- "scope": {
- "locale": "en"
}, - "name": "Red pants - discounts!",
- "metaTags": {
- "title": "Updated - Red"
}, - "attributes": [
- {
- "code": "cost",
- "type": "NUMBER",
- "values": [
- "10.5"
]
}, - {
- "code": "states",
- "type": "ARRAY",
- "values": [
- "TX",
- "CA",
- "NM"
]
}
]
}
]
{- "status": "ACCEPTED",
- "acceptedCount": 4
}
Delete products with specified "sku" and "scope".
DATA_SPACE_ID required | string Data Space ID. See SaaS data space provisioning in Adobe Experience League. |
All items accepted and will be processed asynchronously
One or all received items are invalid. Check the "invalidFeedItems" node for details
Unauthorized request. Verify the x-api-key
value is correct and ensure the JWT is not expired in x-gw-signature
.
Delete a simple product with a specified sku
and scope
.
[- {
- "sku": "red-pants",
- "scope": {
- "locale": "en"
}
}
]
{- "status": "ACCEPTED",
- "acceptedCount": 4
}
Price books define a unique scope that can be used to manage product price discounts across customer tiers. You can also specify the currency to use for product prices in the specified price book.
The catalog data model provides a default price book with id main
and currency in US dollars (USD
).
Create or replace existing price books.
Use the update operation to modify values for existing price books.
All items in the request are accepted for further processing.
Request rejected. Some of the received items are invalid. Check the "invalidFeedItems" node for specific errors.
Unauthorized request. Verify the x-api-key
and make sure that the JWT in x-gw-signature
is still valid.
Create a price book and specify the currency for prices.
[- {
- "priceBookId": "dealer-north",
- "name": "Dealer North price book name",
- "currency": "USD"
}, - {
- "priceBookId": "VIP",
- "currency": "USD"
}
]
{- "status": "ACCEPTED",
- "acceptedCount": 4
}
Update existing price books to change the name or the currency used for pricing.
When the update is processed, the merge strategy is used to apply changes to scalar
and object
type fields. The replace strategy is used to apply changes for fields in an array
.
To update the currency for the default price book, use the price book id main
.
All items in the request are accepted for further processing.
Request rejected. Some of the received items are invalid. Check the invalidFeedItems
node for specific errors.
Unauthorized request. Verify the x-api-key
and make sure that the JWT in x-gw-signature
is still valid.
Update the "dealer-north" and default "main" price books to change the currency.
[- {
- "priceBookId": "dealer-north",
- "currency": "EUR"
}, - {
- "priceBookId": "main",
- "currency": "EUR"
}
]
{- "status": "ACCEPTED",
- "acceptedCount": 4
}
Delete existing price books.
Note that you cannot delete the default price book with id main
.
All items in the request are accepted for further processing.
Request rejected. Some of the received items are invalid. Check the "invalidFeedItems" node for specific errors.
Unauthorized request. Verify the x-api-key
and make sure that the JWT in x-gw-signature
is still valid.
Delete the "dealer-north" price book.
[- {
- "priceBookId": "dealer-north"
}
]
{- "status": "ACCEPTED",
- "acceptedCount": 4
}
Define prices for product SKUs. The scope identifies the price books and price tiers where the price is used. is used.
A price must be associated with at least the default price book with id main
.
All items in the request are accepted for further processing.
Request rejected. Some of the received items are invalid. Check the "invalidFeedItems" node for specific errors.
Unauthorized request. Verify the x-api-key
and make sure that the JWT in x-gw-signature
is still valid.
Add product price information to the catalog data.
[- {
- "sku": "red-pants",
- "priceBookId": "main",
- "regular": 20
}, - {
- "sku": "red-pants",
- "priceBookId": "VIP",
- "regular": 19.9,
- "discounts": [
- {
- "code": "discount",
- "percentage": 10
}
]
}, - {
- "sku": "red-pants",
- "priceBookId": "dealer-north",
- "regular": 20.5,
- "discounts": [
- {
- "code": "fixed",
- "price": 18
}
]
}
]
{- "status": "ACCEPTED",
- "acceptedCount": 4
}
Change existing product prices.
When the update is processed, the merge strategy is used to apply changes to scalar
and object
type fields. The replace strategy is used to apply changes for fields in an array
.
All items in the request are accepted for further processing.
Request rejected. Some of the received items are invalid. Check the "invalidFeedItems" node for specific errors.
Unauthorized request. Verify the x-api-key
and make sure that the JWT in x-gw-signature
is still valid.
Update existing product prices for the given SKU ("red-pants") and price book id ("dealer-north").
[- {
- "sku": "red-pants",
- "priceBookId": "dealer-north",
- "discounts": [
- {
- "code": "discount",
- "percentage": 30
}
]
}
]
{- "status": "ACCEPTED",
- "acceptedCount": 4
}
Delete existing product prices
All items in the request are accepted for further processing.
Request rejected. Some of the received items are invalid. Check the "invalidFeedItems" node for specific errors.
Unauthorized request. Verify the x-api-key
and make sure that the JWT in x-gw-signature
is still valid.
Delete the existing product prices information
[- {
- "sku": "red-pants",
- "priceBookId": "dealer-north"
}
]
{- "status": "ACCEPTED",
- "acceptedCount": 4
}