Incomplete information of items

It is possible to get incomplete information about the product in order to show visitor at least something with introduction of new OT platform operation system. There are several options for implementing this mechanism, each with its own characteristics for accounting paid calls.

Complete request is a normal API request.
Incomplete request - when we indicate in API that any information about the product is enough for us. This can be specified in special itemParameters parameter of any method for receiving goods, for example, in BatchGetItemFullInfo.

Product ID, title and picture will always be issued in incomplete request. If incomplete information is allowed and there are all necessary parameters - they will be given precisely, and the rest is what is available.
JD provider has option, which can make price as mandatory information too.

For example, if a product was opened via a direct link, and we have not received it before, then we only know its identifier and nothing else. We will get an error since there are no required parameters.

Product will have all required parameters if it was opened from catalog, since these parameters were already shown in catalog and we know about them.

Availability of other information is unpredictable.

Request will be considered erroneous and free of charge when requesting incomplete information, if we have nothing but an identifier. Request will be considered erroneous and free of charge if, when requesting incomplete information, we have identifier, image, price and seller, but since there is no mandatory parameter - category.

To request full information:

If full information is requested, but we do not have it, but at the same time there are all mandatory fields, but, for example, there is no configurations, although it should be, or we do not know for sure whether it is or not, then a message that product is not available will be displayed. Or there will be an "Incomplete" feature in response, if request allowed to get incomplete items (AllowIncomplete="true"). However, we will not show any data, although we could. This request will be free of charge. At the same time, we will receive all information in priority mode and most likely we will have it with the next request within 10-30 seconds.

Request with data will be paid if we have complete information. In this case complete information is exactly the same minimum set, since the product may not actually have other data.

Important! We have our own data completeness marker. Product is considered to contain complete data if we received a message within our system that information is complete in the process of collecting data. It is this marker that influences whether a request for complete data will return an error or a success.

Variants for data request:

  1. As usual and before, do not use itemParameters parameter. There is no difference in this case, you get only complete data, in other cases there is an error. You can repeat requests after a while, only one request which finally gives data will be paid.
  2. Always use itemParameters with AllowIncomplete = true. In this case, you get an error only if at least one of the required parameters is missing, otherwise you immediately get information as it is. You can repeat requests after a while, but all of them will be paid except the ones with errors.
  3. Make the first request with AllowIncomplete = true, show received information to the user if the product was incomplete, repeat requests without AllowIncomplete = true, update product for user only if received without error. In this case, you will get one paid request when the item is immediately received as complete, or two paid requests (first and last) when the item is first received as incomplete.

Obviously, the second option is not recommended for use, preferably 1 or 3. OT Box uses 1st one in the old design template, and 3rd one in new design template.