curl --request POST \
--url https://api.anysite.io/api/onlinetrade/products/search \
--header 'Content-Type: application/json' \
--header 'access-token: <api-key>' \
--data '
{
"query": "<string>",
"count": 285,
"timeout": 300,
"city": "Москва",
"sort": "views-desc"
}
'import requests
url = "https://api.anysite.io/api/onlinetrade/products/search"
payload = {
"query": "<string>",
"count": 285,
"timeout": 300,
"city": "Москва",
"sort": "views-desc"
}
headers = {
"access-token": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'access-token': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
query: '<string>',
count: 285,
timeout: 300,
city: 'Москва',
sort: 'views-desc'
})
};
fetch('https://api.anysite.io/api/onlinetrade/products/search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.anysite.io/api/onlinetrade/products/search",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'query' => '<string>',
'count' => 285,
'timeout' => 300,
'city' => 'Москва',
'sort' => 'views-desc'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"access-token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.anysite.io/api/onlinetrade/products/search"
payload := strings.NewReader("{\n \"query\": \"<string>\",\n \"count\": 285,\n \"timeout\": 300,\n \"city\": \"Москва\",\n \"sort\": \"views-desc\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("access-token", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.anysite.io/api/onlinetrade/products/search")
.header("access-token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"query\": \"<string>\",\n \"count\": 285,\n \"timeout\": 300,\n \"city\": \"Москва\",\n \"sort\": \"views-desc\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.anysite.io/api/onlinetrade/products/search")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["access-token"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"query\": \"<string>\",\n \"count\": 285,\n \"timeout\": 300,\n \"city\": \"Москва\",\n \"sort\": \"views-desc\"\n}"
response = http.request(request)
puts response.read_body[
{
"item_id": "<string>",
"@type": "OnlinetradeProductCard",
"model_id": "<string>",
"name": "<string>",
"url": "<string>",
"image": "<string>",
"images": [],
"price": 123,
"old_price": 123,
"currency": "RUB",
"discount_percent": 123,
"badges": [],
"bonus": 123,
"in_stock": true,
"rating": 123,
"rating_count": 123,
"mpn": "<string>",
"category_id": 123,
"category_path": [],
"modifications": [],
"city": "<string>",
"city_id": "<string>"
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}/onlinetrade/products/search
Search the ONLINE TRADE.RU (onlinetrade.ru) catalogue by keyword for a named Russian city and return product cards with the current price in roubles, the pre-discount price where the product is discounted, the ON-bonus amount, whether the product can be bought right now, the customer rating and its vote count, the manufacturer code, the category the product sits in with its category path, the product image and the canonical product URL. Orders by popularity, price, novelty, title or number of reviews.
Price: 1 credit
⚠️ Common errors: 412: onlinetrade did not serve the search results for this session; a query nothing matches is not an error and comes back as 200 with an empty list, 422: The city is not one onlinetrade prices in, or a payload field is malformed
curl --request POST \
--url https://api.anysite.io/api/onlinetrade/products/search \
--header 'Content-Type: application/json' \
--header 'access-token: <api-key>' \
--data '
{
"query": "<string>",
"count": 285,
"timeout": 300,
"city": "Москва",
"sort": "views-desc"
}
'import requests
url = "https://api.anysite.io/api/onlinetrade/products/search"
payload = {
"query": "<string>",
"count": 285,
"timeout": 300,
"city": "Москва",
"sort": "views-desc"
}
headers = {
"access-token": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'access-token': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
query: '<string>',
count: 285,
timeout: 300,
city: 'Москва',
sort: 'views-desc'
})
};
fetch('https://api.anysite.io/api/onlinetrade/products/search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.anysite.io/api/onlinetrade/products/search",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'query' => '<string>',
'count' => 285,
'timeout' => 300,
'city' => 'Москва',
'sort' => 'views-desc'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"access-token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.anysite.io/api/onlinetrade/products/search"
payload := strings.NewReader("{\n \"query\": \"<string>\",\n \"count\": 285,\n \"timeout\": 300,\n \"city\": \"Москва\",\n \"sort\": \"views-desc\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("access-token", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.anysite.io/api/onlinetrade/products/search")
.header("access-token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"query\": \"<string>\",\n \"count\": 285,\n \"timeout\": 300,\n \"city\": \"Москва\",\n \"sort\": \"views-desc\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.anysite.io/api/onlinetrade/products/search")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["access-token"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"query\": \"<string>\",\n \"count\": 285,\n \"timeout\": 300,\n \"city\": \"Москва\",\n \"sort\": \"views-desc\"\n}"
response = http.request(request)
puts response.read_body[
{
"item_id": "<string>",
"@type": "OnlinetradeProductCard",
"model_id": "<string>",
"name": "<string>",
"url": "<string>",
"image": "<string>",
"images": [],
"price": 123,
"old_price": 123,
"currency": "RUB",
"discount_percent": 123,
"badges": [],
"bonus": 123,
"in_stock": true,
"rating": 123,
"rating_count": 123,
"mpn": "<string>",
"category_id": 123,
"category_path": [],
"modifications": [],
"city": "<string>",
"city_id": "<string>"
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
API token from the dashboard
Headers
Body
11 <= x <= 57020 <= x <= 15001views-desc, price-asc, price-desc, time-desc, title-asc, title-desc, reviews-desc, reviews-asc Response
Successful Response
Show child attributes
Show child attributes
Show child attributes
Show child attributes