/tsukumo/products/search
curl --request POST \
--url https://api.anysite.io/api/tsukumo/products/search \
--header 'Content-Type: application/json' \
--header 'access-token: <api-key>' \
--data '
{
"count": 2,
"timeout": 300,
"keyword": "<string>",
"category": "<string>",
"maker": [
"<string>"
],
"stock": [
"<string>"
],
"price_min": 1,
"price_max": 1,
"specs": [
"<string>"
],
"tags": [
"<string>"
],
"free_shipping": false,
"ships_within_24h": false,
"ships_within_3_days": false,
"newly_stocked": false,
"include_discontinued": false,
"sort": "recommended"
}
'import requests
url = "https://api.anysite.io/api/tsukumo/products/search"
payload = {
"count": 2,
"timeout": 300,
"keyword": "<string>",
"category": "<string>",
"maker": ["<string>"],
"stock": ["<string>"],
"price_min": 1,
"price_max": 1,
"specs": ["<string>"],
"tags": ["<string>"],
"free_shipping": False,
"ships_within_24h": False,
"ships_within_3_days": False,
"newly_stocked": False,
"include_discontinued": False,
"sort": "recommended"
}
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({
count: 2,
timeout: 300,
keyword: '<string>',
category: '<string>',
maker: ['<string>'],
stock: ['<string>'],
price_min: 1,
price_max: 1,
specs: ['<string>'],
tags: ['<string>'],
free_shipping: false,
ships_within_24h: false,
ships_within_3_days: false,
newly_stocked: false,
include_discontinued: false,
sort: 'recommended'
})
};
fetch('https://api.anysite.io/api/tsukumo/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/tsukumo/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([
'count' => 2,
'timeout' => 300,
'keyword' => '<string>',
'category' => '<string>',
'maker' => [
'<string>'
],
'stock' => [
'<string>'
],
'price_min' => 1,
'price_max' => 1,
'specs' => [
'<string>'
],
'tags' => [
'<string>'
],
'free_shipping' => false,
'ships_within_24h' => false,
'ships_within_3_days' => false,
'newly_stocked' => false,
'include_discontinued' => false,
'sort' => 'recommended'
]),
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/tsukumo/products/search"
payload := strings.NewReader("{\n \"count\": 2,\n \"timeout\": 300,\n \"keyword\": \"<string>\",\n \"category\": \"<string>\",\n \"maker\": [\n \"<string>\"\n ],\n \"stock\": [\n \"<string>\"\n ],\n \"price_min\": 1,\n \"price_max\": 1,\n \"specs\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"free_shipping\": false,\n \"ships_within_24h\": false,\n \"ships_within_3_days\": false,\n \"newly_stocked\": false,\n \"include_discontinued\": false,\n \"sort\": \"recommended\"\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/tsukumo/products/search")
.header("access-token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"count\": 2,\n \"timeout\": 300,\n \"keyword\": \"<string>\",\n \"category\": \"<string>\",\n \"maker\": [\n \"<string>\"\n ],\n \"stock\": [\n \"<string>\"\n ],\n \"price_min\": 1,\n \"price_max\": 1,\n \"specs\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"free_shipping\": false,\n \"ships_within_24h\": false,\n \"ships_within_3_days\": false,\n \"newly_stocked\": false,\n \"include_discontinued\": false,\n \"sort\": \"recommended\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.anysite.io/api/tsukumo/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 \"count\": 2,\n \"timeout\": 300,\n \"keyword\": \"<string>\",\n \"category\": \"<string>\",\n \"maker\": [\n \"<string>\"\n ],\n \"stock\": [\n \"<string>\"\n ],\n \"price_min\": 1,\n \"price_max\": 1,\n \"specs\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"free_shipping\": false,\n \"ships_within_24h\": false,\n \"ships_within_3_days\": false,\n \"newly_stocked\": false,\n \"include_discontinued\": false,\n \"sort\": \"recommended\"\n}"
response = http.request(request)
puts response.read_body[
{
"id": "<string>",
"url": "<string>",
"@type": "TsukumoProductCard",
"name": "<string>",
"maker": "<string>",
"maker_id": "<string>",
"image": "<string>",
"price": 123,
"currency": "JPY",
"price_text": "<string>",
"availability": "<string>",
"summary": "<string>",
"stock_message": "<string>",
"delivery_message": "<string>",
"badges": [],
"rating": 123,
"review_count": 123
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}/tsukumo
/tsukumo/products/search
Search TSUKUMO (ツクモ) products by keyword and/or category, narrowed by maker, availability, price range, the category-specific specification filters, merchandising labels, free shipping, dispatch speed and whether discontinued stock is included, with six orderings. Returns product cards with the product number, name, maker, image, tax-included price, availability, stock and dispatch lines, labels, star rating and review count.
Price: 1 credit
⚠️ Common errors: 412: The requested category holds no products on shop.tsukumo.co.jp, 422: Neither keyword nor category was given, a malformed category, or stock combined with include_discontinued
POST
/
api
/
tsukumo
/
products
/
search
/tsukumo/products/search
curl --request POST \
--url https://api.anysite.io/api/tsukumo/products/search \
--header 'Content-Type: application/json' \
--header 'access-token: <api-key>' \
--data '
{
"count": 2,
"timeout": 300,
"keyword": "<string>",
"category": "<string>",
"maker": [
"<string>"
],
"stock": [
"<string>"
],
"price_min": 1,
"price_max": 1,
"specs": [
"<string>"
],
"tags": [
"<string>"
],
"free_shipping": false,
"ships_within_24h": false,
"ships_within_3_days": false,
"newly_stocked": false,
"include_discontinued": false,
"sort": "recommended"
}
'import requests
url = "https://api.anysite.io/api/tsukumo/products/search"
payload = {
"count": 2,
"timeout": 300,
"keyword": "<string>",
"category": "<string>",
"maker": ["<string>"],
"stock": ["<string>"],
"price_min": 1,
"price_max": 1,
"specs": ["<string>"],
"tags": ["<string>"],
"free_shipping": False,
"ships_within_24h": False,
"ships_within_3_days": False,
"newly_stocked": False,
"include_discontinued": False,
"sort": "recommended"
}
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({
count: 2,
timeout: 300,
keyword: '<string>',
category: '<string>',
maker: ['<string>'],
stock: ['<string>'],
price_min: 1,
price_max: 1,
specs: ['<string>'],
tags: ['<string>'],
free_shipping: false,
ships_within_24h: false,
ships_within_3_days: false,
newly_stocked: false,
include_discontinued: false,
sort: 'recommended'
})
};
fetch('https://api.anysite.io/api/tsukumo/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/tsukumo/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([
'count' => 2,
'timeout' => 300,
'keyword' => '<string>',
'category' => '<string>',
'maker' => [
'<string>'
],
'stock' => [
'<string>'
],
'price_min' => 1,
'price_max' => 1,
'specs' => [
'<string>'
],
'tags' => [
'<string>'
],
'free_shipping' => false,
'ships_within_24h' => false,
'ships_within_3_days' => false,
'newly_stocked' => false,
'include_discontinued' => false,
'sort' => 'recommended'
]),
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/tsukumo/products/search"
payload := strings.NewReader("{\n \"count\": 2,\n \"timeout\": 300,\n \"keyword\": \"<string>\",\n \"category\": \"<string>\",\n \"maker\": [\n \"<string>\"\n ],\n \"stock\": [\n \"<string>\"\n ],\n \"price_min\": 1,\n \"price_max\": 1,\n \"specs\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"free_shipping\": false,\n \"ships_within_24h\": false,\n \"ships_within_3_days\": false,\n \"newly_stocked\": false,\n \"include_discontinued\": false,\n \"sort\": \"recommended\"\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/tsukumo/products/search")
.header("access-token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"count\": 2,\n \"timeout\": 300,\n \"keyword\": \"<string>\",\n \"category\": \"<string>\",\n \"maker\": [\n \"<string>\"\n ],\n \"stock\": [\n \"<string>\"\n ],\n \"price_min\": 1,\n \"price_max\": 1,\n \"specs\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"free_shipping\": false,\n \"ships_within_24h\": false,\n \"ships_within_3_days\": false,\n \"newly_stocked\": false,\n \"include_discontinued\": false,\n \"sort\": \"recommended\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.anysite.io/api/tsukumo/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 \"count\": 2,\n \"timeout\": 300,\n \"keyword\": \"<string>\",\n \"category\": \"<string>\",\n \"maker\": [\n \"<string>\"\n ],\n \"stock\": [\n \"<string>\"\n ],\n \"price_min\": 1,\n \"price_max\": 1,\n \"specs\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"free_shipping\": false,\n \"ships_within_24h\": false,\n \"ships_within_3_days\": false,\n \"newly_stocked\": false,\n \"include_discontinued\": false,\n \"sort\": \"recommended\"\n}"
response = http.request(request)
puts response.read_body[
{
"id": "<string>",
"url": "<string>",
"@type": "TsukumoProductCard",
"name": "<string>",
"maker": "<string>",
"maker_id": "<string>",
"image": "<string>",
"price": 123,
"currency": "JPY",
"price_text": "<string>",
"availability": "<string>",
"summary": "<string>",
"stock_message": "<string>",
"delivery_message": "<string>",
"badges": [],
"rating": 123,
"review_count": 123
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
API token from the dashboard
Headers
Body
application/json
Required range:
x >= 1Required range:
20 <= x <= 1500Minimum string length:
1Required range:
x >= 0Required range:
x >= 0Available options:
recommended, newest, maker_asc, maker_desc, price_asc, price_desc Response
Successful Response
⌘I