Skip to main content

Market Radar API (1.0.2)

Download OpenAPI specification:Download

This API provides programmatic access to Kemiex's market intelligence data. Whether you're building internal dashboards, integrating with procurement systems, or developing custom market analysis tools, this API provides the structured data you need to leverage Kemiex's market intelligence.

Response headers

In addition to standard headers that you would expect, each response contains the following specific headers:

Header Description
X-Trace-Id Trace identifier used to track each request against internal logs
X-Server-Version Version of the server that responded

When asking for support, please provide them as reference if possible.

Error handling

Kemiex uses conventional HTTP response codes to indicate the success or failure of an API request. In general: Codes in the 2xx range indicate success. Codes in the 4xx range indicate an error that failed given the information provided. Codes in the 5xx range indicate an error with Kemiex’s servers.

Unsuccessful responses contain 2 parts: an error code, and user-friendly message describing the issue. You can expect the following errors, though more may be added in the future:

Error Code
Description
BAD_REQUEST_RESOURCE_NOT_FOUND Client-side error: the URL address is wrong
BAD_REQUEST_METHOD_NOT_SUPPORTED Client-side error: the HTTP method used in the request is not supported by the endpoint
BAD_REQUEST_MISSING_REQUIRED_PARAMETER Client-side error: at least one of the required parameters is not provided
BAD_REQUEST_PARAMETER_TYPE_MISMATCH Client-side error: a parameter value does not match its expected type
BAD_REQUEST_PARAMETER_VALUE_ILLEGAL Client-side error: a parameter value is outside the range of values allowed
BAD_REQUEST General client-side error: The request cannot be processed. This is a catch-all error thrown when the errors above do not apply
FORBIDDEN The API key is not provided, or the provided value is incorrect, or the associated account does not have access to the requested resource
INTERNAL_SERVER_ERROR An unexpected condition was encountered on the server

Rate limits

A rate limit of 100 quota units per minute is enforced. Exceeding this limit returns HTTP code 429. The table below lists the corresponding quota units consumed per api endpoint.

Endpoint Quota units
/price-benchmarks 1 unit

Market News

Operations related to market news

Retrieve Market News

Returns Market News that were published in the specified time interval and matching optional search criteria. The time interval boundaries are inclusive.

Authorizations:
apiKey
query Parameters
publishFrom
required
string <date-time>
Examples:
  • publishFrom=2024-11-23T20:15:30Z - Specify the timestamp directly in Zulu timezone
  • publishFrom=2024-11-23T21:15:30+01:00 - In some cases, if the + sign is being used, it will be encoded as a space, but the server will put back the + instead of space. It is a convenient way to specify the desired timestamp in a local timezone, however, the timestamps in the results will be in Zulu timezone
  • publishFrom=2024-11-23T21:15:30%2B01:00 - Explicitly encode the + sign. It is a convenient way to specify the desired timestamp in a local timezone, however, the timestamps in the results will be in Zulu timezone

The published start date in ISO 8601-1:2019 combined date and time standard

publishTo
string <date-time>
Examples:
  • publishTo=2024-11-23T20:15:30Z - Specify the timestamp directly in Zulu timezone
  • publishTo=2024-11-23T21:15:30+01:00 - In some cases, if the + sign is being used, it will be encoded as a space, but the server will put back the + instead of space. It is a convenient way to specify the desired timestamp in a local timezone, however, the timestamps in the results will be in Zulu timezone
  • publishTo=2024-11-23T21:15:30%2B01:00 - Explicitly encode the + sign. It is a convenient way to specify the desired timestamp in a local timezone, however, the timestamps in the results will be in Zulu timezone

The published end date in ISO 8601-1:2019 combined date and time standard. If it is not provided, it is automatically set to the current date time

categories
Array of strings
Examples:
  • categories=Vitamins - Searching for a single category
  • categories=Agri-Food,Americas,Amino acids,Analysis,APIs,Asia,Commentary,Company news,Disruption,EMEA,Expansion,Featured,Feed additives,Financial reports,Food additives,Kemiex report,Logistics,Regulation,Strategic transactions,Vitamins - Searching for multiple categories

An additional filter for searching market news related only to specific categories. In case multiple values are provided, we consider an AND operation between them (market news that have all values from the given list as categories will be considered matched). Search is case insensitive.

textSearch
string
Examples:
  • textSearch=United States - By specifying quotes around words, phrase search is being triggered. As before, the last word in the phrase will be considered a search prefix
  • textSearch=-grow - Just put a dash in front of the word to mark the negation. Since it is a single word in this example, it will be considered as a search prefix (in this example, search criteria is 'NOT grow*', thus market news with title or summary containing also words 'growth', 'growing' or other derivative words will be excluded from search results)
  • textSearch=grow - This is the simplest case, just provide the searched word. Note that in this case the given word will be considered as a search prefix (thus in this example, 'growth', 'growing' or other derivative words will be matched)
  • textSearch=grow or pharma - It is easy to search for one word or another, by specifying the 'or' between them. Again, the last word will be considered as a search prefix (in this example, search criteria is 'grow OR pharma*', thus 'pharmaceutical' will also be a match. Same as before, if we change the order of the words the search results may be different)
  • textSearch=grow pharma - When two or multiple regular words are provided, AND between them is considered implicitly. Note that in this case the last word will be considered as a search prefix (in this example, search criteria is 'grow AND pharma*', thus 'pharmaceutical' will also be a match. But if we change the order of the words the search results may be different)
  • textSearch="United States" or (grow -pharma) - AND, OR, NOT and phrase searches can be combined, in order to create powerful search criteria

An additional filter for searching market news with title or summary complying the given full text search criteria. It can be constructed using the rules of websearch_to_tsquery postgresql function, in English language

page
integer <int32> >= 1
Default: 1
Example: page=1

List results on a specific page. Starting page is 1

pageSize
integer <int32> [ 1 .. 100 ]
Default: 50
Example: pageSize=50

Maximum number of results that should be returned per page. Please keep it constant for requests across multiple pages, in order to correctly receive all results.

Responses

Response samples

Content type
application/json
{}

Price Benchmarks

Operations related to reported prices

Retrieve price points

Returns weekly price points that include average, minimum, maximum, and own company submission values for the specified products and date range. Price Benchmark data is published every Wednesday.

Authorizations:
apiKey
query Parameters
products
required
Array of strings
Examples:
  • products=VB1-EU,VAL-USW - Request price points for Vitamin B1 in Europe and L-Valine in US West.

A comma-separated list of product-region codes to query.

API-data regions:

Code Region
CN FOB China
EU FCA Europe
USE CFR US East
USW CFR US West

Documented products and available regions:

The table below documents product-region pairs currently present in published Price Benchmark data. It is not a fixed restriction of the endpoint, and availability may change as data is published. A request must use a region listed for its product.

Code Product Available regions
ARG L-Arginine CN, EU, USE, USW
BET Betaine HCl (>95%) CN, EU, USE, USW
BIO Biotin (2%) CN, EU, USE, USW
CHC Choline Chloride 60% Corn Cob CN, EU, USE, USW
CUS Copper Sulfate (>25%) CN, EU, USE, USW
DCP DCP (16-18%) CN, EU, USE, USW
DLM Dl-Methionine (99%) CN, EU, USE, USW
LYH L-Lysine Hcl (98%) CN, EU, USE, USW
LYL L-Lysine Liquid (50%) EU
LYS L-Lysine Sulfate (70%) CN, EU, USE, USW
MCP MCP (21-23%) CN, EU, USE, USW
MGO Magnesium Oxide (>82%) CN, EU, USE, USW
MHA Methionine Hydroxy Analogue (MHA) CN, EU, USE, USW
MNS Manganese Sulfate (>31%) CN, EU, USE, USW
TAU Taurine CN, EU, USE, USW
THR L-Threonine CN, EU, USE, USW
TRP L-Tryptophan CN, EU, USE, USW
V12 Vitamin B12 (1% HPLC) CN, EU, USE, USW
VAL L-Valine CN, EU, USE, USW
VB1 Vitamin B1 (Mono) CN, EU, USE, USW
VB2 Vitamin B2 (80%) CN, EU, USE, USW
VB3 Vitamin B3 CN, EU, USE, USW
VB5 Vitamin B5 (Calcium Pantothenate) CN, EU, USE, USW
VB6 Vitamin B6 Hcl CN, EU, USE, USW
VB9 Vitamin B9 (>96%) CN, EU, USE, USW
VCP Vitamin C phosphate 35% CN, EU, USE, USW
VTA Vitamin A (1'000) CN, EU, USE, USW
VTC Vitamin C (99% powder) CN, EU, USE, USW
VTD Vitamin D3 (500) CN, EU, USE, USW
VTE Vitamin E (50% Feed) CN, EU, USE, USW
VTK Vitamin K3 MNB CN, EU, USE, USW
ZNO Zinc Oxide (>72%) CN, EU, USE, USW
startDate
required
string
Examples:
  • startDate=2024-01-01 - Retrieve price points published from this date onward.

The start date for the price points series

Responses

Response samples

Content type
application/json
{
  • "data": [
    • {
      }
    ]
}