curl --request PATCH \
--url https://api.jtl-cloud.com/erp/v2/sales-channels/{salesChannelId}/connector \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-tenant-id: <x-tenant-id>' \
--data '
{
"url": "<string>",
"apiToken": "<string>",
"name": "<string>",
"companyId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"isActive": true,
"isLocked": true,
"rootCategoryId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"useShopOrderNumber": true,
"canImport": true,
"shouldImportItemsAndCategories": true,
"shouldImportOrdersAndCustomers": true,
"shouldImportImages": true,
"canUpload": true,
"shouldUploadItemComplete": true,
"shouldUploadItemPriceRestricted": true,
"shouldUploadItemStockRestricted": true,
"shouldUploadCustomers": true,
"shouldUploadImages": true,
"shouldRefreshExistingItems": true,
"shouldRefreshCustomers": true,
"shouldDeleteImagesOnImport": true,
"shouldWawiCalculateTaxRate": true,
"shouldWawiCalculateTaxRateForShipping": true,
"shippingCountryIso": "<string>",
"entityCount": 123,
"pullCount": 123,
"imagesCount": 123,
"maximumTransferRate": 123,
"quickSyncCount": 123,
"sendOnlyAssignedManufacturers": true
}
'import requests
url = "https://api.jtl-cloud.com/erp/v2/sales-channels/{salesChannelId}/connector"
payload = {
"url": "<string>",
"apiToken": "<string>",
"name": "<string>",
"companyId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"isActive": True,
"isLocked": True,
"rootCategoryId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"useShopOrderNumber": True,
"canImport": True,
"shouldImportItemsAndCategories": True,
"shouldImportOrdersAndCustomers": True,
"shouldImportImages": True,
"canUpload": True,
"shouldUploadItemComplete": True,
"shouldUploadItemPriceRestricted": True,
"shouldUploadItemStockRestricted": True,
"shouldUploadCustomers": True,
"shouldUploadImages": True,
"shouldRefreshExistingItems": True,
"shouldRefreshCustomers": True,
"shouldDeleteImagesOnImport": True,
"shouldWawiCalculateTaxRate": True,
"shouldWawiCalculateTaxRateForShipping": True,
"shippingCountryIso": "<string>",
"entityCount": 123,
"pullCount": 123,
"imagesCount": 123,
"maximumTransferRate": 123,
"quickSyncCount": 123,
"sendOnlyAssignedManufacturers": True
}
headers = {
"x-tenant-id": "<x-tenant-id>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {
'x-tenant-id': '<x-tenant-id>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
url: '<string>',
apiToken: '<string>',
name: '<string>',
companyId: 'b45f6432-2462-4c6f-b00f-1d9d01000000',
isActive: true,
isLocked: true,
rootCategoryId: 'b45f6432-2462-4c6f-b00f-1d9d01000000',
useShopOrderNumber: true,
canImport: true,
shouldImportItemsAndCategories: true,
shouldImportOrdersAndCustomers: true,
shouldImportImages: true,
canUpload: true,
shouldUploadItemComplete: true,
shouldUploadItemPriceRestricted: true,
shouldUploadItemStockRestricted: true,
shouldUploadCustomers: true,
shouldUploadImages: true,
shouldRefreshExistingItems: true,
shouldRefreshCustomers: true,
shouldDeleteImagesOnImport: true,
shouldWawiCalculateTaxRate: true,
shouldWawiCalculateTaxRateForShipping: true,
shippingCountryIso: '<string>',
entityCount: 123,
pullCount: 123,
imagesCount: 123,
maximumTransferRate: 123,
quickSyncCount: 123,
sendOnlyAssignedManufacturers: true
})
};
fetch('https://api.jtl-cloud.com/erp/v2/sales-channels/{salesChannelId}/connector', 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.jtl-cloud.com/erp/v2/sales-channels/{salesChannelId}/connector",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'url' => '<string>',
'apiToken' => '<string>',
'name' => '<string>',
'companyId' => 'b45f6432-2462-4c6f-b00f-1d9d01000000',
'isActive' => true,
'isLocked' => true,
'rootCategoryId' => 'b45f6432-2462-4c6f-b00f-1d9d01000000',
'useShopOrderNumber' => true,
'canImport' => true,
'shouldImportItemsAndCategories' => true,
'shouldImportOrdersAndCustomers' => true,
'shouldImportImages' => true,
'canUpload' => true,
'shouldUploadItemComplete' => true,
'shouldUploadItemPriceRestricted' => true,
'shouldUploadItemStockRestricted' => true,
'shouldUploadCustomers' => true,
'shouldUploadImages' => true,
'shouldRefreshExistingItems' => true,
'shouldRefreshCustomers' => true,
'shouldDeleteImagesOnImport' => true,
'shouldWawiCalculateTaxRate' => true,
'shouldWawiCalculateTaxRateForShipping' => true,
'shippingCountryIso' => '<string>',
'entityCount' => 123,
'pullCount' => 123,
'imagesCount' => 123,
'maximumTransferRate' => 123,
'quickSyncCount' => 123,
'sendOnlyAssignedManufacturers' => true
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"x-tenant-id: <x-tenant-id>"
],
]);
$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.jtl-cloud.com/erp/v2/sales-channels/{salesChannelId}/connector"
payload := strings.NewReader("{\n \"url\": \"<string>\",\n \"apiToken\": \"<string>\",\n \"name\": \"<string>\",\n \"companyId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"isActive\": true,\n \"isLocked\": true,\n \"rootCategoryId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"useShopOrderNumber\": true,\n \"canImport\": true,\n \"shouldImportItemsAndCategories\": true,\n \"shouldImportOrdersAndCustomers\": true,\n \"shouldImportImages\": true,\n \"canUpload\": true,\n \"shouldUploadItemComplete\": true,\n \"shouldUploadItemPriceRestricted\": true,\n \"shouldUploadItemStockRestricted\": true,\n \"shouldUploadCustomers\": true,\n \"shouldUploadImages\": true,\n \"shouldRefreshExistingItems\": true,\n \"shouldRefreshCustomers\": true,\n \"shouldDeleteImagesOnImport\": true,\n \"shouldWawiCalculateTaxRate\": true,\n \"shouldWawiCalculateTaxRateForShipping\": true,\n \"shippingCountryIso\": \"<string>\",\n \"entityCount\": 123,\n \"pullCount\": 123,\n \"imagesCount\": 123,\n \"maximumTransferRate\": 123,\n \"quickSyncCount\": 123,\n \"sendOnlyAssignedManufacturers\": true\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("x-tenant-id", "<x-tenant-id>")
req.Header.Add("Authorization", "Bearer <token>")
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.patch("https://api.jtl-cloud.com/erp/v2/sales-channels/{salesChannelId}/connector")
.header("x-tenant-id", "<x-tenant-id>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"url\": \"<string>\",\n \"apiToken\": \"<string>\",\n \"name\": \"<string>\",\n \"companyId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"isActive\": true,\n \"isLocked\": true,\n \"rootCategoryId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"useShopOrderNumber\": true,\n \"canImport\": true,\n \"shouldImportItemsAndCategories\": true,\n \"shouldImportOrdersAndCustomers\": true,\n \"shouldImportImages\": true,\n \"canUpload\": true,\n \"shouldUploadItemComplete\": true,\n \"shouldUploadItemPriceRestricted\": true,\n \"shouldUploadItemStockRestricted\": true,\n \"shouldUploadCustomers\": true,\n \"shouldUploadImages\": true,\n \"shouldRefreshExistingItems\": true,\n \"shouldRefreshCustomers\": true,\n \"shouldDeleteImagesOnImport\": true,\n \"shouldWawiCalculateTaxRate\": true,\n \"shouldWawiCalculateTaxRateForShipping\": true,\n \"shippingCountryIso\": \"<string>\",\n \"entityCount\": 123,\n \"pullCount\": 123,\n \"imagesCount\": 123,\n \"maximumTransferRate\": 123,\n \"quickSyncCount\": 123,\n \"sendOnlyAssignedManufacturers\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.jtl-cloud.com/erp/v2/sales-channels/{salesChannelId}/connector")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["x-tenant-id"] = '<x-tenant-id>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"url\": \"<string>\",\n \"apiToken\": \"<string>\",\n \"name\": \"<string>\",\n \"companyId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"isActive\": true,\n \"isLocked\": true,\n \"rootCategoryId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"useShopOrderNumber\": true,\n \"canImport\": true,\n \"shouldImportItemsAndCategories\": true,\n \"shouldImportOrdersAndCustomers\": true,\n \"shouldImportImages\": true,\n \"canUpload\": true,\n \"shouldUploadItemComplete\": true,\n \"shouldUploadItemPriceRestricted\": true,\n \"shouldUploadItemStockRestricted\": true,\n \"shouldUploadCustomers\": true,\n \"shouldUploadImages\": true,\n \"shouldRefreshExistingItems\": true,\n \"shouldRefreshCustomers\": true,\n \"shouldDeleteImagesOnImport\": true,\n \"shouldWawiCalculateTaxRate\": true,\n \"shouldWawiCalculateTaxRateForShipping\": true,\n \"shippingCountryIso\": \"<string>\",\n \"entityCount\": 123,\n \"pullCount\": 123,\n \"imagesCount\": 123,\n \"maximumTransferRate\": 123,\n \"quickSyncCount\": 123,\n \"sendOnlyAssignedManufacturers\": true\n}"
response = http.request(request)
puts response.read_body{
"isActive": true,
"isLocked": true,
"canImport": true,
"shouldImportItemsAndCategories": true,
"shouldImportOrdersAndCustomers": true,
"shouldImportImages": true,
"canUpload": true,
"shouldUploadItemComplete": true,
"shouldUploadItemPriceRestricted": true,
"shouldUploadItemStockRestricted": true,
"shouldUploadCustomers": true,
"shouldUploadImages": true,
"shouldRefreshExistingItems": true,
"shouldRefreshCustomers": true,
"shouldDeleteImagesOnImport": true,
"shouldWawiCalculateTaxRate": true,
"shouldWawiCalculateTaxRateForShipping": true,
"pullCount": 123,
"quickSyncCount": 123,
"sendOnlyAssignedManufacturers": true,
"useShopOrderNumber": true,
"languages": [
{
"iso": "<string>",
"isAssigned": true,
"isDefault": true,
"nameGerman": "<string>",
"nameEnglish": "<string>"
}
],
"currencies": [
{
"currencyCode": "<string>",
"codeSource": 0,
"isAssigned": true,
"isDefault": true,
"name": "<string>"
}
],
"features": [
{
"feature": 1,
"isEnabled": true
}
],
"taxRates": [
{
"rate": 123,
"taxRateId": "b45f6432-2462-4c6f-b00f-1d9d01000000"
}
],
"serverInfo": {
"isOldConnector": true,
"platformName": "<string>",
"platformVersion": "<string>",
"protocolVersion": "<string>",
"endpointVersion": "<string>"
},
"salesChannelId": "<string>",
"name": "<string>",
"url": "<string>",
"companyId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"maximumTransferRate": 123,
"imagesCount": 123,
"entityCount": 123,
"shippingCountryIso": "<string>",
"dummyCategoryId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"rootCategoryId": "b45f6432-2462-4c6f-b00f-1d9d01000000"
}{
"type": "https://www.rfc-editor.org/rfc/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred.",
"status": 400,
"instance": "/api/route",
"traceId": "0HMPNHL0JHL76:00000001",
"detail": "<string>",
"errors": [
{
"name": "Error or field name",
"reason": "Error reason",
"code": "<string>",
"severity": "<string>"
}
]
}{
"type": "https://www.rfc-editor.org/rfc/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred.",
"status": 400,
"instance": "/api/route",
"traceId": "0HMPNHL0JHL76:00000001",
"detail": "<string>",
"errors": [
{
"name": "Error or field name",
"reason": "Error reason",
"code": "<string>",
"severity": "<string>"
}
]
}{
"type": "https://www.rfc-editor.org/rfc/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred.",
"status": 400,
"instance": "/api/route",
"traceId": "0HMPNHL0JHL76:00000001",
"detail": "<string>",
"errors": [
{
"name": "Error or field name",
"reason": "Error reason",
"code": "<string>",
"severity": "<string>"
}
]
}{
"type": "https://www.rfc-editor.org/rfc/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred.",
"status": 400,
"instance": "/api/route",
"traceId": "0HMPNHL0JHL76:00000001",
"detail": "<string>",
"errors": [
{
"name": "Error or field name",
"reason": "Error reason",
"code": "<string>",
"severity": "<string>"
}
]
}{
"type": "https://www.rfc-editor.org/rfc/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred.",
"status": 400,
"instance": "/api/route",
"traceId": "0HMPNHL0JHL76:00000001",
"detail": "<string>",
"errors": [
{
"name": "Error or field name",
"reason": "Error reason",
"code": "<string>",
"severity": "<string>"
}
]
}{
"type": "https://www.rfc-editor.org/rfc/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred.",
"status": 400,
"instance": "/api/route",
"traceId": "0HMPNHL0JHL76:00000001",
"detail": "<string>",
"errors": [
{
"name": "Error or field name",
"reason": "Error reason",
"code": "<string>",
"severity": "<string>"
}
]
}{
"type": "https://www.rfc-editor.org/rfc/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred.",
"status": 400,
"instance": "/api/route",
"traceId": "0HMPNHL0JHL76:00000001",
"detail": "<string>",
"errors": [
{
"name": "Error or field name",
"reason": "Error reason",
"code": "<string>",
"severity": "<string>"
}
]
}Update Connector
curl --request PATCH \
--url https://api.jtl-cloud.com/erp/v2/sales-channels/{salesChannelId}/connector \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-tenant-id: <x-tenant-id>' \
--data '
{
"url": "<string>",
"apiToken": "<string>",
"name": "<string>",
"companyId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"isActive": true,
"isLocked": true,
"rootCategoryId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"useShopOrderNumber": true,
"canImport": true,
"shouldImportItemsAndCategories": true,
"shouldImportOrdersAndCustomers": true,
"shouldImportImages": true,
"canUpload": true,
"shouldUploadItemComplete": true,
"shouldUploadItemPriceRestricted": true,
"shouldUploadItemStockRestricted": true,
"shouldUploadCustomers": true,
"shouldUploadImages": true,
"shouldRefreshExistingItems": true,
"shouldRefreshCustomers": true,
"shouldDeleteImagesOnImport": true,
"shouldWawiCalculateTaxRate": true,
"shouldWawiCalculateTaxRateForShipping": true,
"shippingCountryIso": "<string>",
"entityCount": 123,
"pullCount": 123,
"imagesCount": 123,
"maximumTransferRate": 123,
"quickSyncCount": 123,
"sendOnlyAssignedManufacturers": true
}
'import requests
url = "https://api.jtl-cloud.com/erp/v2/sales-channels/{salesChannelId}/connector"
payload = {
"url": "<string>",
"apiToken": "<string>",
"name": "<string>",
"companyId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"isActive": True,
"isLocked": True,
"rootCategoryId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"useShopOrderNumber": True,
"canImport": True,
"shouldImportItemsAndCategories": True,
"shouldImportOrdersAndCustomers": True,
"shouldImportImages": True,
"canUpload": True,
"shouldUploadItemComplete": True,
"shouldUploadItemPriceRestricted": True,
"shouldUploadItemStockRestricted": True,
"shouldUploadCustomers": True,
"shouldUploadImages": True,
"shouldRefreshExistingItems": True,
"shouldRefreshCustomers": True,
"shouldDeleteImagesOnImport": True,
"shouldWawiCalculateTaxRate": True,
"shouldWawiCalculateTaxRateForShipping": True,
"shippingCountryIso": "<string>",
"entityCount": 123,
"pullCount": 123,
"imagesCount": 123,
"maximumTransferRate": 123,
"quickSyncCount": 123,
"sendOnlyAssignedManufacturers": True
}
headers = {
"x-tenant-id": "<x-tenant-id>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {
'x-tenant-id': '<x-tenant-id>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
url: '<string>',
apiToken: '<string>',
name: '<string>',
companyId: 'b45f6432-2462-4c6f-b00f-1d9d01000000',
isActive: true,
isLocked: true,
rootCategoryId: 'b45f6432-2462-4c6f-b00f-1d9d01000000',
useShopOrderNumber: true,
canImport: true,
shouldImportItemsAndCategories: true,
shouldImportOrdersAndCustomers: true,
shouldImportImages: true,
canUpload: true,
shouldUploadItemComplete: true,
shouldUploadItemPriceRestricted: true,
shouldUploadItemStockRestricted: true,
shouldUploadCustomers: true,
shouldUploadImages: true,
shouldRefreshExistingItems: true,
shouldRefreshCustomers: true,
shouldDeleteImagesOnImport: true,
shouldWawiCalculateTaxRate: true,
shouldWawiCalculateTaxRateForShipping: true,
shippingCountryIso: '<string>',
entityCount: 123,
pullCount: 123,
imagesCount: 123,
maximumTransferRate: 123,
quickSyncCount: 123,
sendOnlyAssignedManufacturers: true
})
};
fetch('https://api.jtl-cloud.com/erp/v2/sales-channels/{salesChannelId}/connector', 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.jtl-cloud.com/erp/v2/sales-channels/{salesChannelId}/connector",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'url' => '<string>',
'apiToken' => '<string>',
'name' => '<string>',
'companyId' => 'b45f6432-2462-4c6f-b00f-1d9d01000000',
'isActive' => true,
'isLocked' => true,
'rootCategoryId' => 'b45f6432-2462-4c6f-b00f-1d9d01000000',
'useShopOrderNumber' => true,
'canImport' => true,
'shouldImportItemsAndCategories' => true,
'shouldImportOrdersAndCustomers' => true,
'shouldImportImages' => true,
'canUpload' => true,
'shouldUploadItemComplete' => true,
'shouldUploadItemPriceRestricted' => true,
'shouldUploadItemStockRestricted' => true,
'shouldUploadCustomers' => true,
'shouldUploadImages' => true,
'shouldRefreshExistingItems' => true,
'shouldRefreshCustomers' => true,
'shouldDeleteImagesOnImport' => true,
'shouldWawiCalculateTaxRate' => true,
'shouldWawiCalculateTaxRateForShipping' => true,
'shippingCountryIso' => '<string>',
'entityCount' => 123,
'pullCount' => 123,
'imagesCount' => 123,
'maximumTransferRate' => 123,
'quickSyncCount' => 123,
'sendOnlyAssignedManufacturers' => true
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"x-tenant-id: <x-tenant-id>"
],
]);
$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.jtl-cloud.com/erp/v2/sales-channels/{salesChannelId}/connector"
payload := strings.NewReader("{\n \"url\": \"<string>\",\n \"apiToken\": \"<string>\",\n \"name\": \"<string>\",\n \"companyId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"isActive\": true,\n \"isLocked\": true,\n \"rootCategoryId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"useShopOrderNumber\": true,\n \"canImport\": true,\n \"shouldImportItemsAndCategories\": true,\n \"shouldImportOrdersAndCustomers\": true,\n \"shouldImportImages\": true,\n \"canUpload\": true,\n \"shouldUploadItemComplete\": true,\n \"shouldUploadItemPriceRestricted\": true,\n \"shouldUploadItemStockRestricted\": true,\n \"shouldUploadCustomers\": true,\n \"shouldUploadImages\": true,\n \"shouldRefreshExistingItems\": true,\n \"shouldRefreshCustomers\": true,\n \"shouldDeleteImagesOnImport\": true,\n \"shouldWawiCalculateTaxRate\": true,\n \"shouldWawiCalculateTaxRateForShipping\": true,\n \"shippingCountryIso\": \"<string>\",\n \"entityCount\": 123,\n \"pullCount\": 123,\n \"imagesCount\": 123,\n \"maximumTransferRate\": 123,\n \"quickSyncCount\": 123,\n \"sendOnlyAssignedManufacturers\": true\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("x-tenant-id", "<x-tenant-id>")
req.Header.Add("Authorization", "Bearer <token>")
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.patch("https://api.jtl-cloud.com/erp/v2/sales-channels/{salesChannelId}/connector")
.header("x-tenant-id", "<x-tenant-id>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"url\": \"<string>\",\n \"apiToken\": \"<string>\",\n \"name\": \"<string>\",\n \"companyId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"isActive\": true,\n \"isLocked\": true,\n \"rootCategoryId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"useShopOrderNumber\": true,\n \"canImport\": true,\n \"shouldImportItemsAndCategories\": true,\n \"shouldImportOrdersAndCustomers\": true,\n \"shouldImportImages\": true,\n \"canUpload\": true,\n \"shouldUploadItemComplete\": true,\n \"shouldUploadItemPriceRestricted\": true,\n \"shouldUploadItemStockRestricted\": true,\n \"shouldUploadCustomers\": true,\n \"shouldUploadImages\": true,\n \"shouldRefreshExistingItems\": true,\n \"shouldRefreshCustomers\": true,\n \"shouldDeleteImagesOnImport\": true,\n \"shouldWawiCalculateTaxRate\": true,\n \"shouldWawiCalculateTaxRateForShipping\": true,\n \"shippingCountryIso\": \"<string>\",\n \"entityCount\": 123,\n \"pullCount\": 123,\n \"imagesCount\": 123,\n \"maximumTransferRate\": 123,\n \"quickSyncCount\": 123,\n \"sendOnlyAssignedManufacturers\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.jtl-cloud.com/erp/v2/sales-channels/{salesChannelId}/connector")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["x-tenant-id"] = '<x-tenant-id>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"url\": \"<string>\",\n \"apiToken\": \"<string>\",\n \"name\": \"<string>\",\n \"companyId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"isActive\": true,\n \"isLocked\": true,\n \"rootCategoryId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"useShopOrderNumber\": true,\n \"canImport\": true,\n \"shouldImportItemsAndCategories\": true,\n \"shouldImportOrdersAndCustomers\": true,\n \"shouldImportImages\": true,\n \"canUpload\": true,\n \"shouldUploadItemComplete\": true,\n \"shouldUploadItemPriceRestricted\": true,\n \"shouldUploadItemStockRestricted\": true,\n \"shouldUploadCustomers\": true,\n \"shouldUploadImages\": true,\n \"shouldRefreshExistingItems\": true,\n \"shouldRefreshCustomers\": true,\n \"shouldDeleteImagesOnImport\": true,\n \"shouldWawiCalculateTaxRate\": true,\n \"shouldWawiCalculateTaxRateForShipping\": true,\n \"shippingCountryIso\": \"<string>\",\n \"entityCount\": 123,\n \"pullCount\": 123,\n \"imagesCount\": 123,\n \"maximumTransferRate\": 123,\n \"quickSyncCount\": 123,\n \"sendOnlyAssignedManufacturers\": true\n}"
response = http.request(request)
puts response.read_body{
"isActive": true,
"isLocked": true,
"canImport": true,
"shouldImportItemsAndCategories": true,
"shouldImportOrdersAndCustomers": true,
"shouldImportImages": true,
"canUpload": true,
"shouldUploadItemComplete": true,
"shouldUploadItemPriceRestricted": true,
"shouldUploadItemStockRestricted": true,
"shouldUploadCustomers": true,
"shouldUploadImages": true,
"shouldRefreshExistingItems": true,
"shouldRefreshCustomers": true,
"shouldDeleteImagesOnImport": true,
"shouldWawiCalculateTaxRate": true,
"shouldWawiCalculateTaxRateForShipping": true,
"pullCount": 123,
"quickSyncCount": 123,
"sendOnlyAssignedManufacturers": true,
"useShopOrderNumber": true,
"languages": [
{
"iso": "<string>",
"isAssigned": true,
"isDefault": true,
"nameGerman": "<string>",
"nameEnglish": "<string>"
}
],
"currencies": [
{
"currencyCode": "<string>",
"codeSource": 0,
"isAssigned": true,
"isDefault": true,
"name": "<string>"
}
],
"features": [
{
"feature": 1,
"isEnabled": true
}
],
"taxRates": [
{
"rate": 123,
"taxRateId": "b45f6432-2462-4c6f-b00f-1d9d01000000"
}
],
"serverInfo": {
"isOldConnector": true,
"platformName": "<string>",
"platformVersion": "<string>",
"protocolVersion": "<string>",
"endpointVersion": "<string>"
},
"salesChannelId": "<string>",
"name": "<string>",
"url": "<string>",
"companyId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"maximumTransferRate": 123,
"imagesCount": 123,
"entityCount": 123,
"shippingCountryIso": "<string>",
"dummyCategoryId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"rootCategoryId": "b45f6432-2462-4c6f-b00f-1d9d01000000"
}{
"type": "https://www.rfc-editor.org/rfc/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred.",
"status": 400,
"instance": "/api/route",
"traceId": "0HMPNHL0JHL76:00000001",
"detail": "<string>",
"errors": [
{
"name": "Error or field name",
"reason": "Error reason",
"code": "<string>",
"severity": "<string>"
}
]
}{
"type": "https://www.rfc-editor.org/rfc/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred.",
"status": 400,
"instance": "/api/route",
"traceId": "0HMPNHL0JHL76:00000001",
"detail": "<string>",
"errors": [
{
"name": "Error or field name",
"reason": "Error reason",
"code": "<string>",
"severity": "<string>"
}
]
}{
"type": "https://www.rfc-editor.org/rfc/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred.",
"status": 400,
"instance": "/api/route",
"traceId": "0HMPNHL0JHL76:00000001",
"detail": "<string>",
"errors": [
{
"name": "Error or field name",
"reason": "Error reason",
"code": "<string>",
"severity": "<string>"
}
]
}{
"type": "https://www.rfc-editor.org/rfc/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred.",
"status": 400,
"instance": "/api/route",
"traceId": "0HMPNHL0JHL76:00000001",
"detail": "<string>",
"errors": [
{
"name": "Error or field name",
"reason": "Error reason",
"code": "<string>",
"severity": "<string>"
}
]
}{
"type": "https://www.rfc-editor.org/rfc/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred.",
"status": 400,
"instance": "/api/route",
"traceId": "0HMPNHL0JHL76:00000001",
"detail": "<string>",
"errors": [
{
"name": "Error or field name",
"reason": "Error reason",
"code": "<string>",
"severity": "<string>"
}
]
}{
"type": "https://www.rfc-editor.org/rfc/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred.",
"status": 400,
"instance": "/api/route",
"traceId": "0HMPNHL0JHL76:00000001",
"detail": "<string>",
"errors": [
{
"name": "Error or field name",
"reason": "Error reason",
"code": "<string>",
"severity": "<string>"
}
]
}{
"type": "https://www.rfc-editor.org/rfc/rfc7231#section-6.5.1",
"title": "One or more validation errors occurred.",
"status": 400,
"instance": "/api/route",
"traceId": "0HMPNHL0JHL76:00000001",
"detail": "<string>",
"errors": [
{
"name": "Error or field name",
"reason": "Error reason",
"code": "<string>",
"severity": "<string>"
}
]
}Authorizations
The access token received from the authorization server in the OAuth 2.0 flow.
Headers
Optional, client-generated key for deduplicating repeated write requests. A repeated request with the same key returns the originally recorded result instead of executing the effect again.
1 - 255The tenant ID for the target ERP instance.
Path Parameters
Sales channel id of the connector account to update.
Body
Request model for UpdateConnector command endpoint. Route parameters bind from the route, query parameters from the query string, everything else from the body.
URL of the connector endpoint. Omit to leave unchanged. Connection data - submitting a different value triggers the live handshake, which must succeed before anything is written.
API token used to authenticate against the connector endpoint. Omit to leave unchanged. Write-only - never echoed back, and no response model of this API exposes it. Connection data - a new token triggers the live handshake, which must succeed before anything is written, and discards any Connector session cached for this account so the next call authenticates with the new token.
Name of the connector account. Omit to leave unchanged.
ID of the company the connector account belongs to. Omit to leave unchanged. Cannot be cleared - the company is mandatory at creation and is the company whose tSteuersatz the endpoint-reported taxrates are validated against.
"b45f6432-2462-4c6f-b00f-1d9d01000000"
Connector account is active. Omit to leave unchanged.
Connector account is locked. Omit to leave unchanged.
Root category for imported items. Omit to leave unchanged; send null to clear it.
"b45f6432-2462-4c6f-b00f-1d9d01000000"
Use the shop-assigned order number instead of the Wawi-generated one. Omit to leave unchanged.
The connector account is allowed to import data from the endpoint. Omit to leave unchanged.
Items and categories are imported. Omit to leave unchanged.
Orders and customers are imported. Omit to leave unchanged.
Item images are imported. Omit to leave unchanged.
The connector account is allowed to upload data to the endpoint. Omit to leave unchanged.
Items are uploaded completely, rather than price/stock-restricted. Omit to leave unchanged.
Item uploads are restricted to prices only. Omit to leave unchanged.
Item uploads are restricted to stock only. Omit to leave unchanged.
Customer data is uploaded. Omit to leave unchanged.
Images are uploaded. Omit to leave unchanged.
Existing items are merged/refreshed rather than only added. Omit to leave unchanged.
Existing customer data is refreshed. Omit to leave unchanged.
Images are deleted on import. Omit to leave unchanged.
The Wawi calculates the tax rate for items, rather than taking the endpoint-reported one. Omit to leave unchanged.
The Wawi calculates the tax rate for shipping, rather than taking the endpoint-reported one. Omit to leave unchanged.
The shipping/departure country as an ISO 3166-1 alpha-2 country code. Omit to leave unchanged; send null to clear it. Canonical form is UPPERCASE (ADR-85); matching is case-insensitive.
Maximum number of entities transferred per run. Omit to leave unchanged; send null for unrestricted.
Maximum pull count per sync run. Omit to leave unchanged. Not nullable - the column carries a definite value, so there is no unrestricted state to express.
Maximum number of images transferred per run. Omit to leave unchanged; send null for unrestricted.
Maximum transfer rate for uploads, in megabytes. Omit to leave unchanged; send null for unrestricted.
Maximum quick-sync count per sync run. Omit to leave unchanged. Not nullable, for the same reason as PullCount.
Manufacturer data sent to the endpoint is filtered to only assigned manufacturers. Omit to leave unchanged.
Response
The connector account was updated. The body is the same full Connector object CreateConnector returns, read back after the write, so the caller sees the actual post-conditions - normalised values, the fields it did not send, and the connector-driven sections. The metadata sections are the persisted ones; a connection change verifies the new connection but does not re-mirror the metadata yet (WAWI-91762).
Full result of the CreateConnector live pipeline: the created (or, for ?simulate=true, merely verified) connector account together with its complete metadata mirror. Base data and configuration are the persisted DB state (null/default-filled from the WPF editor defaults where the request omitted them); the connector-driven sections (Languages, Currencies, Features, TaxRates, ServerInfo) are always sourced live from the endpoint handshake, ISO-identified per the ADR-85 pattern established by ConnectorCurrency. Deliberate ADR-4 deviation: ADR-4 asks Create commands to return only the created Id, but this command returns the full object instead, because ?simulate=true never persists anything and therefore has no Id to return - the live handshake/taxrate-validation result (Languages, Currencies, Features, TaxRates, ServerInfo) is the only useful response for that preview path, so the same shape is used for the persisted case too rather than modeling two different response contracts. Known limitations: (1) RootCategoryId and UseShopOrderNumber are modeled here rather than folded into ConnectorAccount/ConnectorConfiguration, because those two shared GET models are out of this ticket's scope - reconcile once WAWI-91760 lands; (2) synchronisation settings (send/receive/delete per object type) are deliberately NOT included here - ConnectorSynchronisationEntityType is a 90+ value enum owned by JTL.Wawi.Connector.Core.Contracts, and duplicating it into this response ahead of WAWI-91760's actual mapping design risked a stale/incorrect mirror; use the existing QueryConnectorSynchronisationSettings endpoint for now and fold it in here once the orchestration lands.
Connector account is active.
Connector account is locked.
The connector account is allowed to import data from the endpoint.
Items and categories are imported.
Orders and customers are imported.
Item images are imported.
The connector account is allowed to upload data to the endpoint.
Items are uploaded completely, rather than price/stock-restricted.
Item uploads are restricted to prices only.
Item uploads are restricted to stock only.
Customer data is uploaded.
Images are uploaded.
Existing items are merged/refreshed rather than only added.
Existing customer data is refreshed.
Images are deleted on import.
The Wawi calculates the tax rate for items, rather than taking the endpoint-reported one.
The Wawi calculates the tax rate for shipping, rather than taking the endpoint-reported one.
Maximum pull count per sync run.
Maximum quick-sync count per sync run.
Manufacturer data sent to the endpoint is filtered to only assigned manufacturers.
The shop-assigned order number is used instead of the Wawi-generated one.
Languages available in the Wawi, annotated with the assignment/default state reported by the connector endpoint's live handshake.
Show child attributes
Show child attributes
ISO 4217 currencies known to the Wawi, annotated with the assignment/default state reported by the connector endpoint's live handshake.
Show child attributes
Show child attributes
Every known connector feature, each marked whether the connector endpoint reported it as enabled.
Show child attributes
Show child attributes
Taxrates reported by the connector endpoint's live handshake, each merged with the internal Wawi taxrate it was validated against.
Show child attributes
Show child attributes
Live-only metadata about the connected endpoint's platform and protocol version, as reported by its handshake.
Show child attributes
Show child attributes
Sales channel id of this connector account. Null when the request used ?simulate=true - no account was persisted, so no id could be assigned.
Name of the connector account.
URL of the connector endpoint.
ID of the company the connector account belongs to.
"b45f6432-2462-4c6f-b00f-1d9d01000000"
Maximum transfer rate for uploads, in megabytes, or null if unrestricted.
Maximum number of images transferred per run, or null if unrestricted.
Maximum number of entities transferred per run, or null if unrestricted.
The shipping/departure country as an ISO 3166-1 alpha-2 country code, or null if not set. Canonical form is UPPERCASE (ADR-85); matching is case-insensitive.
Fallback category for uncategorized imported items, or null if not set.
"b45f6432-2462-4c6f-b00f-1d9d01000000"
Root category for imported items, or null if not set.
"b45f6432-2462-4c6f-b00f-1d9d01000000"
Was this page helpful?