Create or update product
curl --request PUT \
--url https://start.aiotic.ai/product/{product_number}/{language_code} \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"description": "<string>",
"remark": "<string>"
}
'import requests
url = "https://start.aiotic.ai/product/{product_number}/{language_code}"
payload = {
"description": "<string>",
"remark": "<string>"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({description: '<string>', remark: '<string>'})
};
fetch('https://start.aiotic.ai/product/{product_number}/{language_code}', 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://start.aiotic.ai/product/{product_number}/{language_code}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'description' => '<string>',
'remark' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <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://start.aiotic.ai/product/{product_number}/{language_code}"
payload := strings.NewReader("{\n \"description\": \"<string>\",\n \"remark\": \"<string>\"\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("X-API-Key", "<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.put("https://start.aiotic.ai/product/{product_number}/{language_code}")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"description\": \"<string>\",\n \"remark\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://start.aiotic.ai/product/{product_number}/{language_code}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"description\": \"<string>\",\n \"remark\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"item_number": "<string>",
"language_code": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"description": "<string>",
"remark": "<string>"
}{
"detail": "<string>"
}Products
Create or update product
Create a new product or update an existing one. The composite key (product_number + language_code) in the path determines the upsert target.
PUT
/
product
/
{product_number}
/
{language_code}
Create or update product
curl --request PUT \
--url https://start.aiotic.ai/product/{product_number}/{language_code} \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"description": "<string>",
"remark": "<string>"
}
'import requests
url = "https://start.aiotic.ai/product/{product_number}/{language_code}"
payload = {
"description": "<string>",
"remark": "<string>"
}
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({description: '<string>', remark: '<string>'})
};
fetch('https://start.aiotic.ai/product/{product_number}/{language_code}', 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://start.aiotic.ai/product/{product_number}/{language_code}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'description' => '<string>',
'remark' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <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://start.aiotic.ai/product/{product_number}/{language_code}"
payload := strings.NewReader("{\n \"description\": \"<string>\",\n \"remark\": \"<string>\"\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("X-API-Key", "<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.put("https://start.aiotic.ai/product/{product_number}/{language_code}")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"description\": \"<string>\",\n \"remark\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://start.aiotic.ai/product/{product_number}/{language_code}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"description\": \"<string>\",\n \"remark\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"item_number": "<string>",
"language_code": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"description": "<string>",
"remark": "<string>"
}{
"detail": "<string>"
}Authorizations
API key for authentication. Required on all endpoints except /healthcheck. Customer and product endpoints also accept a customer-specific API key.
Path Parameters
Product item number
Product language code (e.g., "en", "nl")
Body
application/json
Response
Product created or updated
Unique product identifier
Language code for the product description (e.g., "en", "nl")
When this product was created in the database
Product description
Additional remarks about the product
⌘I