Programmatically access fresh product data from Tradedoubler advertisers.
The Products API lets you access advertisers' product data through a REST API. As soon as you are connected to advertisers through Tradedoubler, you can access their products. All data is searchable and filterable.
The API allows you as a publisher to:
Do not have a publisher account? Register with Tradedoubler and get started today!
This documentation is intended for publishers. If you are an advertiser, go to the corresponding advertiser documentation.
In order to access the Products API, you need a publisher account with Tradedoubler. Signing up for an account takes approximately 2 minutes by filling out this form.
Once you have an account and a site, you can pick up your unique token by logging on and going to "Account" > "Manage tokens". The token for Products API is under the system "PRODUCTS".
Tokens are 40 character hexadecimal SHA-1 strings.
The domain api.tradedoubler.com is CORS enabled, meaning that you can use client side XMLHttpRequest without getting cross-domain security issues.
Please note however that CORS is not yet fully implemented in all browsers, so you may want to go for JSONP for client side requests.
All services in Tradedoubler APIs use the matrix syntax .
However, top level and service irrelevant information is sent as regular URL parameters. Usually, these are token and jsonp.
This is the main search service of Products API. Use it to query the API for products.
The syntax of the search service is:
HTTP[S] GET http://api.tradedoubler.com/1.0/products[.xml|.json|empty][query keys]?token={token}[&jsonp=myCallback]
If you want your response as XML, simply add .xml as extention.
You can add a query to your request if you want to filter the results. All data may not be available on products.
Name | Description | Type | Multiple |
---|---|---|---|
token | Your unique token, identifying you. Required to provide. | String | No |
q | Generic keyword search. Matches intelligently against title and description. | String | Yes |
fid | Feed ID. Required to provide. | Integer | Yes |
currency | Matches against the currency of products. | String | No |
sourceproducturl | Adds the advertiser's product URL without any Tradedoubler tracking. Helps for integrating with platforms like Google Merchant Centre which do not allow tracking links on products | Boolean | Yes |
minPrice | Search for products with a minimum price. | Float | No |
maxPrice | Search for products with a maximum price. | Float | No |
minUpdateDate | Search for products updated after a certian point in time. | Date | No |
maxUpdateDate | Search for products updated before a certian point in time. | Date | No |
tdCategoryId | Matches against the Tradedoubler category ID | Integer | Yes |
category | Matches against the advertiser category name | String | Yes |
brand | Matches against the brand of products | String | Yes |
spId | Matches against the advertiser product ID. | String | Yes |
tdId | Matches against the Tradedoubler ID of products | String | Yes |
ean | Matches against the european article number of products | String | Yes |
mpn | Matches against the manufacturer part number of products | String | Yes |
sku | Matches against the stock keeping unit of products | String | Yes |
upc | Matches against the universal part number of products | String | Yes |
isbn | Matches against the international standard book number of products | String | Yes |
language | Matches against the language of the feed containing products | String | No |
field | Search among custom information on a product. For example field=colour%3Dblack | String | No |
orderBy | Set the order in which products are returned. Choose between priceAsc, priceDesc, modificationDateAsc and modificationDateDesc. | String | No |
page | Which page of result to return, given limit and pageSize is set. | Integer | No |
pageSize | The maximum number of items to return. | Integer | No |
limit | Global limit of the returned document. Set to pageSize*page+pageSize in order to use pagination. | Integer | No |
groupOffersByProduct | Set to true if you want the same product from different advertisers to be grouped. | Boolean | No |
priceHistory | Set to true to enable price history which gives you a list of previous prices for products. | Boolean | No |
dateOutputFormat | Set to iso8601 to use ISO8601 dates, otherwise dates will be output as unix time in milliseconds. | String | No |
availability | Matches against the availability of products | String | Yes |
minInStock | Miminum number of products in stock. | Integer | No |
maxInStock | Maximum number of products in stock. | Integer | No |
condition | Matches against the condition of products | String | Yes |
model | Matches against the model of products | String | Yes |
manufacturer | Matches against the manufacturer of products | String | Yes |
shippingCost | Matches against the shipping cost of products | String | Yes |
promoText | Matches against the promoText of products | String | Yes |
warranty | Matches against the warranty of products | String | Yes |
deliveryTime | Matches against the delivery time of products | String | Yes |
weight | Matches against the weight of products | String | Yes |
size | Matches against the size of products | String | Yes |
techSpec | Matches against the technical specification of products | String | Yes |
pretty | Set to true for nice line breaks in the output. | Boolean | No |
jsonp | If you are requesting JSON, you can define a callback name. The API will return a Javascript document with the result as an array in a function named as the callback. | String | No |
brands=Cheerios&brands=Weetos
or comma separate values brands=Cheerios,Weetos
. Make sure that the key supports multiple values first.Get all available products in JSON:
HTTP[S] GET http://api.tradedoubler.com/1.0/products?token={token}
Get products matching "laptop" in XML:
HTTP[S] GET http://api.tradedoubler.com/1.0/products.xml;q=laptop?token={token}
Get Weetos products costing at least £200 with price history enabled:
HTTP[S] GET http://api.tradedoubler.com/1.0/products;brands=Weetos;priceHistory=true;pricemin=200?token={token}
Get five football related products in a pretty JSON format with grouping enabled:
HTTP[S] GET http://api.tradedoubler.com/1.0/products;groupoffersbyproduct=true;pretty=true;limit=5;q=football?token={token}
As a response to your request, you can expect some of the following data. Please note that not all data is present for all products.
Name | Description | Type | Required |
---|---|---|---|
categories | Parent of categories attributes (id, name, tdCategoryName). | N/A | Yes |
id | ID of the Tradedoubler category that the product is mapped to. | String | Yes* |
name | Advertiser category name. | String | Yes* |
tdCategoryName | Name of the Tradedoubler category that the product is mapped to. | String | No |
description | A long description of the product. | String | Yes |
feedId | Primary key of the feed owning the product. | Integer | Yes |
groupingId | The identifier Tradedoubler use to group this product. | String | Yes |
id | Tradedoubler's internal identifier of the product. May be used as GUID. | String | Yes |
modified | Date of the last modification in ISO-8601 or unix time depending on the dateOutputFormat parameter. For example 2012-12-24T15:00+0100 or 1356357600000. | Date | Yes |
name | Title of the product. | String | Yes |
price | Price of the product. Currency is picked up from your affiliate program. | Float | Yes |
priceHistory | A list of all price changes during the life of the product. Each entry will detail the price, currency and date changed. | Array | Yes |
productImage | Parent of productImage attributes (url, width, height). | N/A | Yes |
url | A URL to an image of the product. | String | Yes |
width | Width of the product image in pixels. | Integer | No |
height | Height of the product image in pixels. | Integer | No |
productUrl | URL to the product. Use this to link to the product and earn commission. If publisher token is used, the product URL is prefixed with Tradedoubler's tracker URL. | String | Yes |
programName | Name of the program of the feed this product belongs to. | String | Yes |
sourceProductUrl | Adds the advertiser's product URL without any Tradedoubler tracking. | String | No |
sourceProductId | Your identifier of the product. | String | Yes |
availability | Information on the availablity of the product. | String | No |
brand | Brand of the product. For example "Apple". | String | No |
condition | Condition of the product. For example used or new. | String | No |
deliveryTime | The amount of time it takes to get the product delivered. | String | No |
identifiers | Parent of identifiers attributes (ean, sku, upc, isbn, mpn). | N/A | No |
ean | International article number of the product. Used for grouping and can be used as product identifier. | Integer | No |
sku | Stock-keeping unit of the product. Used for grouping and can be used as product identifier. | String | No |
upc | Universal Product Code. Used for grouping and can be used as product identifier. | String | No |
isbn | International Standard Book Number. Used for grouping and can be used as product identifier. | String | No |
mpn | Manufacturer part number. Used for grouping and can be used as product identifier. | String | No |
inStock | Number of items you have in stock. | Integer | No |
language | ISO 639-1 code of the language to use in the response. For example en for English or sv for Swedish. | String | No |
manufacturer | Manufacturer of the product. For example "Samsung" | String | No |
model | The product's model. For example "iPhone" | String | No |
programLogo | Url to the logo of the program of the feed this product belongs to. | String | No |
promoText | Promotional text of the product | String | No |
shippingCost | Cost of getting the product delivered. For example "Free" or "11.95". | String | No |
shortDescription | Description of the product in fewer words. | String | No |
size | Size of the product. | String | No |
techSpecs | Technical specification of the product. | String | No |
warranty | Warranty information about the product | String | No |
weight | Weight of the product. | String | No |
fields | Additional information about the product that does not fit any of the attributes above. | N/A | No |
name | Name of the custom attribute. | String | No |
value | Value of the custom attribute. | String | No |
*Either tdCategoryName or name is always present.
This is an example of a JSON response. It contains one product with lots of information.
{ "productHeader" : { "totalHits" : 1 }, "products" : [ { "name" : "Symantec pcAnywhere Host & Remote - (versie 12.5 ) - volledig pakket - 5 gebruikers - CD - Linux, Win - International", "productImage" : { "url" : "http://snpi.dell.com/snp/images/products/mlrg/nl-nl~A6854908/A6854908.jpg" }, "language" : "sv", "description" : "Symantec pcAnywhere is een uitgebreide, veilige oplossing voor remote besturing en beheer die is voorzien van functies voor het doorgeven van bestanden, zodat helpdesk- en supportkwesties snel kunnen worden opgelost, ook over meerdere platforms. De invitation-functie voor gateways en hosts is een oplossing voor typische connectiviteitsproblemen waarmee organisaties en het MKB mee te maken krijgt die meerdere remote apparaten ondersteunen. Doordat de gateway-functie de detectie van en de veilige verbinding met meerdere apparaten achter een firewall of NAT (Network Address Translation) in real time mogelijk maakt, kunnen helpdeskmedewerkers sessies met eindgebruikers initiëren,", "identifiers" : { "sku" : "A6854908" }, "fields" : [ { "name" : "ManufacturerID", "value" : "14530209" }, { "name" : "HomeDelivery", "value" : "Yes" }, { "name" : "StaticSKU", "value" : "A6854908nlnl" }, { "name" : "VendorCode", "value" : "93" }, { "name" : "CategoryID", "value" : "5243" }, { "name" : "VendorName", "value" : "Symantec Corporation" }, { "name" : "Channel", "value" : "bsd" }, { "name" : "ArticleID", "value" : "14530209" } ], "offers" : [ { "feedId" : 8976, "productUrl" : "http://pdt.tradedoubler.com/click?a(2038177)p(41305)product(519de2b6e4b00d36c4c7e7c0)ttid(3)url(http%3A%2F%2Fwww.rf.nl%2Fdellspider%2Fredir.asp%3Fc%3Dnl%26l%3Dnl%26a%3Dbsd%26ProductID%3DA6854908%26redir%3Dhttp%253A%252F%252Flt%252Edell%252Ecom%252Flt%252Flt%252Easpx%253FCID%253D6511%2526LID%253D167791%2526DGC%253DAF%2526DGSeg%253DBSD%2526ACD%253D%5Btd_guid%5D%2526AID%253D%5Btd_affiliate_id%5D%2526DURL%253DDestinationURL)", "priceHistory" : [ { "price" : { "value" : "617.28", "currency" : "EUR" }, "date" : 1378557168050 } ], "modified" : 1381505376751, "availability" : "In Stock", "deliveryTime" : "Gebruikelijke verzending in: + 3 weken", "condition" : "New", "shippingCost" : "Kostenlos", "sourceProductId" : "A6854908nlnl", "programName" : "Wanten testzzzzzzzzzz", "id" : "519de2b6e4b00d36c4c7e7c0", "sourceProductUrl" : "https://accessories.euro.dell.com/sna/productdetail.aspx?c=nl&l=nl&s=bsd&cs=nlbsdt1&sku=A6854908" } ], "categories" : [ { "name" : "Software en downloads - Zakelijk & kantoor" } ] } ] }
If you defined the jsonp key in your query (for example jsonp=myCallbackFunction
), the API will return a Javascript document with the result as an array in a function named as the callback:
function myCallbackFunction(result, statusCode, message)
JSONP callback function argument definitions:
Name | Description | Type |
---|---|---|
result | The result JSON as an evaluated javascript object. See example JSON above. | object/array |
statusCode | HTTP status code. Undefined if successful. | int |
message | Error message. Undefined if successful. | string |
If you did not define the jsonp key, the API will return actual JSON with Content-Type: application/json
.
This is the same product as above, formatted as XML:
<result version="3.0" xmlns:ns2="urn:com:tradedoubler:pf:model:xml:common" xmlns="urn:com:tradedoubler:pf:model:xml:output"> <productHeader> <totalHits>1</totalHits> </productHeader> <products> <product language="sv"> <ns2:name>Symantec pcAnywhere Host & Remote - (versie 12.5 ) - volledig pakket - 5 gebruikers - CD - Linux, Win - International</ns2:name> <ns2:description>Symantec pcAnywhere is een uitgebreide, veilige oplossing voor remote besturing en beheer die is voorzien van functies voor het doorgeven van bestanden, zodat helpdesk- en supportkwesties snel kunnen worden opgelost, ook over meerdere platforms. De invitation-functie voor gateways en hosts is een oplossing voor typische connectiviteitsproblemen waarmee organisaties en het MKB mee te maken krijgt die meerdere remote apparaten ondersteunen. Doordat de gateway-functie de detectie van en de veilige verbinding met meerdere apparaten achter een firewall of NAT (Network Address Translation) in real time mogelijk maakt, kunnen helpdeskmedewerkers sessies met eindgebruikers initiëren,</ns2:description> <ns2:productImage>http://snpi.dell.com/snp/images/products/mlrg/nl-nl~A6854908/A6854908.jpg</ns2:productImage> <ns2:categories> <ns2:category name="Software en downloads - Zakelijk & kantoor"/> </ns2:categories> <ns2:fields> <ns2:field name="ManufacturerID">14530209</ns2:field> <ns2:field name="HomeDelivery">Yes</ns2:field> <ns2:field name="StaticSKU">A6854908nlnl</ns2:field> <ns2:field name="VendorCode">93</ns2:field> <ns2:field name="CategoryID">5243</ns2:field> <ns2:field name="VendorName">Symantec Corporation</ns2:field> <ns2:field name="Channel">bsd</ns2:field> <ns2:field name="ArticleID">14530209</ns2:field> </ns2:fields> <ns2:sku>A6854908</ns2:sku> <offers> <offer dateFormat="epoch" modifiedDate="1381505376751" sourceProductId="A6854908nlnl" id="519de2b6e4b00d36c4c7e7c0"> <ns2:feedId>8976</ns2:feedId> <ns2:productUrl>http://pdt.tradedoubler.com/click?a(2038177)p(41305)product(519de2b6e4b00d36c4c7e7c0)ttid(3)url(http%3A%2F%2Fwww.rf.nl%2Fdellspider%2Fredir.asp%3Fc%3Dnl%26l%3Dnl%26a%3Dbsd%26ProductID%3DA6854908%26redir%3Dhttp%253A%252F%252Flt%252Edell%252Ecom%252Flt%252Flt%252Easpx%253FCID%253D6511%2526LID%253D167791%2526DGC%253DAF%2526DGSeg%253DBSD%2526ACD%253D%5Btd_guid%5D%2526AID%253D%5Btd_affiliate_id%5D%2526DURL%253DDestinationURL)</ns2:productUrl> <ns2:programName>Wanten testzzzzzzzzzz</ns2:programName> <ns2:sourceProductUrl>https://accessories.euro.dell.com/sna/productdetail.aspx?c=nl&l=nl&s=bsd&cs=nlbsdt1&sku=A6854908</ns2:sourceProductUrl> <priceHistory> <ns2:price dateFormat="epoch" date="1378557168050" currency="EUR">617.28</ns2:price> </priceHistory> <ns2:availability>In Stock</ns2:availability> <ns2:deliveryTime>Gebruikelijke verzending in: + 3 weken</ns2:deliveryTime> <ns2:condition>New</ns2:condition> <ns2:shippingCost>Kostenlos</ns2:shippingCost> </offer> </offers> </product> </products> </result>
To get your response as XML, add xml as extension products.xml
.
XSD files for the output format are available here:
Name | File |
---|---|
Common format | ProductsFeedCommon_v3_0.xsd |
Output format | ProductsFeedOutput_v3_0.xsd |
You may wish to export the results in CSV rather than JSON or XML. To do so, you need to modify the search service syntax as follows:
HTTP[S] GET http://api.tradedoubler.com/1.0/products[.xml|.json|empty][format=csv][csvSeparators][csvEmbrace][csvFlattenFields][query keys]?token={token}
Name | Description | Expected value |
---|---|---|
Format | Informs the service that a CSV export should be performed. | csv |
csvSeparators | Defines the character used as a field separator. There are three levels within the Products API - categories, category and attribute. You must define the separator to be used for each in that order (see below for more information). The value must be URL encoded. The default value is ,;: | Three URL encoded characters (e.g. ;||) |
csvEmbrace | Defines the character used to embrace each field (sometimes called text qualifier). The value must be URL encoded. | URL encoded characters (e.g. ") |
csvFlattenFields | Defines whether fields should be flattened or not. The default value is false. | Boolean (e.g. True or False) |
Take this example of product data:
... "categories" : [ { "name" : "Electronics", "tdCategoryName" : "Electronics", "id" : 40 }, { "name" : "Projectors", "tdCategoryName" : "Projectors", "id" : 62 } ] ...
The above extract shows a product with two categories (Electronics and Projectors). The separators are as follows:
Use " as the embrace character, |:; as the separators and flatten the fields:
HTTP[S] GET http://api.tradedoubler.com/1.0/products;format=csv;fid=9612;csvSeparators=%7C%3A%3B;csvEmbrace=%22;csvFlattenFields=true?token={token}
Use " as the embrace character, ,;: as the separators and do not flatten the fields (these are all default setting so they do not need to be listed) :
HTTP[S] GET http://api.tradedoubler.com/1.0/products;format=csv;fid=9612;?token={token}
Any search request is limited to a maximum of 1,000 products. That means that adding page=2;pageSize=1000 will not get any results since the cap has already been reached at page one.
In addition to the search service, you can use the unlimited service to get all of your raw product data from a specific feed.
This service is intended to be used by technically advanced publishers who wish to save the data it their own database, and process it on their own.
In order to prevent excessive downloading of unchanged Unlimited files you are allowed to download each version of a file 3 times within a 24-hour window. If this threshold is exceeded the service will respond with http 429 – Too Many Requests, instead of providing the file. Here is a sample response for the same :
“code”: “429”,
“message”: “Request Quota exceeded. Feed has not been updated recently”
When a new version of a file is published you are immediately granted download permission again. You can use the endpoint Unlimited Last Updated service as described below to get the last updated time of a specific feed.
When an unlimited file is requested for the first time there is an initial grace period of 5 days from the download limit. During this period the limit does not apply so that you can experiment and ensure proper functionality of the integration.
The syntax of the unlimited service is:
HTTP[S] GET http://api.tradedoubler.com/1.0/productsUnlimited[.xml|.json|empty];fid={feedId}?token={token}[&jsonp=myCallback]
These are the query keys available to unlimited requests:
Name | Description | Type | Required |
---|---|---|---|
token | Your unique token, identifying you as a publisher. | String | Yes |
fid | Primary key of the feed you are requesting. | Integer | Yes |
sourceproducturl | Adds the advertiser's product URL without any Tradedoubler tracking. Helps for integrating with platforms like Google Merchant Centre which do not allow tracking links on products | Boolean | Yes |
page | Which page of the result to return, given pageSize has been set. | Integer | No* |
pageSize | The maximum number of items to return per page. | Integer/td> | No* |
pretty | Set to true for nice line breaks in the output. | Boolean | No |
Get all products from feed ID 123 as JSON:
HTTP[S] GET http://api.tradedoubler.com/1.0/productsUnlimited;fid=123?token={token}
You can use the unlimited feed last updated service to get the last updated time for a specific feed.
It would be ideal to use this service before the unlimited search service. If the feed is not updated, you should avoid calling the unlimited search service for that feed.
This service is intended to be used by technically advanced publishers who wish to save the data it their own database, and process it on their own.
The syntax of the unlimited feed last updated service is:
HTTP[S] GET http://api.tradedoubler.com/1.0/productsUnlimited/lastUpdated[.xml|.json|empty];fid={feedId}?token={token}[&jsonp=myCallback]
These are the keys you can use in your request:
Name | Description | Type | Required |
---|---|---|---|
token | Your unique token, identifying you as a publisher. | String | Yes |
fid | Primary key of the feed you are requesting. | Integer | Yes |
pretty | Set to true for nice line breaks in the output. | Boolean | No |
Get last updated time for feed ID 123 as JSON:
HTTP[S] GET http://api.tradedoubler.com/1.0/productsUnlimited/lastUpdated.json;fid=123?token={token}
Response for feed ID 123 as JSON:
... { "feedIds": [ 123 ], "lastUpdatedTime": "2024-04-17T15:57:00.470742" } ...
The above response shows last updated time for feed id 123. Below are the details for each response elements you can expect
All products are mapped to a Tradedoubler category to ensure consistent naming conventions. The Categories service allows you to retrieve the Tradedoubler category tree together with the number of products available in each.
The category tree is available using the following syntax:
HTTP[S] GET http://api.tradedoubler.com/1.0/productCategories[.{json|xml|empty}][;language={language|empty}]?token={token}
These are the keys you can use in your request:
Name | Description | Required |
---|---|---|
token | Your unique token, identifying you as a publisher. | Yes |
language | ISO 639-1 code of the language to use in the response. For example en for English or sv for Swedish. | No |
jsonp | If you are requesting JSON, you can define a callback name. The API will return a Javascript document with the result as an array in a function named as the callback. | No |
An XSD file for the output format is available here:
Name | File |
---|---|
Output format | CategoryTree_v1_0.xsd |
As a response to your request, you can expect the following information:
Name | Description |
---|---|
language | Language of the category name. |
name | Name of the category in the language you specified. Defaults to English. |
id | Unique category identifier which does not change. |
productCount | Total number of products mapped to this category in feeds associated with the token provided. |
If a category has subcategories, these are presented as children in the JSON or XML.
Fetch JSON tree Click here to fetch the category tree in English as JSON:
Data not loaded
Fetch XML tree Click here to fetch the category tree in English as XML:
Data not loaded
The product feed service allows you to get general information about feeds connected with your token including name, status, number of products and unmapped categories.
The syntax of the productFeeds service is:
HTTP[S] GET http://api.tradedoubler.com/1.0/productFeeds{/feedId}[.xml|.json|empty]?token={token}[&jsonp=myCallback]
These are the query keys available for productFeeds requests:
Name | Description | Type | Required |
---|---|---|---|
token | Your unique token, identifying you as a publisher. | String | Yes |
pretty | Set to true to get nice line breaks in the response. | Boolean | No |
Get all feeds as JSON:
HTTP[S] GET http://api.tradedoubler.com/1.0/productFeeds?token={token}
Get feed ID 123 as XML:
HTTP[S] GET http://api.tradedoubler.com/1.0/productFeeds/123.xml?token={token}
Filter feeds from program IDs:
HTTP[S] GET http://api.tradedoubler.com/1.0/productFeeds;programId=id1,id2;?token={token}
Here is an example of a response in JSON:
{ "feeds" : [ { "feedId" : 19750, "name" : "Carl Example Feed", "active" : true, "sendToNewPF" : false, "visible" : true, "currencyISOCode" : "GBP", "languageISOCode" : "sv", "secret" : false, "numberOfUnmappedCategories" : 0, "numberOfProducts" : 189905, "lastModifiedTime" : "2020-01-01T12:09:03.374+0200", "programs" : [ { "programId" : 231514, "name" : "Carl Example program UK" }, { "programId" : 228139, "name" : "Carl Example program SE" } ] }, { "feedId" : 20782, "name" : "Carl test", "active" : true, "sendToNewPF" : false, "visible" : true, "currencyISOCode" : "SEK", "languageISOCode" : "en", "secret" : false, "numberOfUnmappedCategories" : 7, "numberOfProducts" : 13727, "lastModifiedTime" : "2020-01-02T12:09:03.374+0200", "programs" : [ { "programId" : 50000, "name" : "Carl 50k party program" } ] } ] }
When an error occurs in the API, we try to describe the problem in detail. Here are the available error messages.
Module | Error code | HTTP code | HTTP status | Description |
---|---|---|---|---|
Open API | 1 | 400 | Bad Request | Missing token |
Open API | 2 | 403 | Forbidden | Invalid token |
Open API | 3 | 404 | Not Found | Invalid API version |
Open API | 4 | 404 | Not Found | Invalid module version |
Open API | 5 | 500 | Internal Server Error | Service not responding |
Open API | 6 | 404 | Not Found | Missing version |
Open API | 7 | 404 | Not Found | Missing module |
Products API | PF_200 | 400 | Bad Request | Parameters is missing |
Products API | PF_210 | 400 | Bad Request | No parsable content received |
Products API | PF_230 | 400 | Bad Request | An error not expected and not known |
Products API | PF_240 | 400 | Bad Request | Value not set on a parameter, e.g. a Category of a Product |
Products API | PF_250 | 400 | Bad Request | Our system is experiencing internal problems and cannot serve the request passed at this moment in time |
Products API | PF_260 | 400 | Bad Request | Value expected to be numeric but was not |
Products API | PF_270 | 400 | Bad Request | Value expected to be comma separated |
Products API | PF_280 | 400 | Bad Request | Price could not be parsed from posted data |
Products API | PF_290 | 400 | Bad Request | The currency of the Price is not a valid ISO currency |
Products API | PF_300 | 400 | Bad Request | Token request is not valid |
Products API | PF_391 | 400 | Bad Request | A malformed URL was supplied |
Products API | PF_392 | 400 | Bad Request | Query against a feed not belonging to a program of caller |
Products API | PF_430 | 400 | Bad Request | Parameter has illegal value |
Other than the above, you can get generic HTTP errors. These are described here by W3C
The most common HTTP errors are:
HTTP code | HTTP status | Description |
---|---|---|
400 | Bad Request | Invalid XML, Json or date format |
404 | Not Found | The URL does not exist |
405 | Method Not Allowed | Invalid HTTP method (e.g. GET instead of POST) |
406 | Not Acceptable | Requesting invalid content type (e.g text/plain instead of application/xml) |
415 | Unsupported Media Type | Sending invalid content type |
500 | Internal Server Error | Service down |