curl --request POST \
--url https://api.jtl-cloud.com/erp/v2/stock-transfers \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-tenant-id: <x-tenant-id>' \
--data '
{
"sourceWarehouseId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"targetWarehouseId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"shippingMethodId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"lineItems": [
{
"itemId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"quantity": 123
}
],
"expectedDeliveryDate": "2023-11-07T05:31:56Z",
"note": "<string>"
}
'import requests
url = "https://api.jtl-cloud.com/erp/v2/stock-transfers"
payload = {
"sourceWarehouseId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"targetWarehouseId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"shippingMethodId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"lineItems": [
{
"itemId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"quantity": 123
}
],
"expectedDeliveryDate": "2023-11-07T05:31:56Z",
"note": "<string>"
}
headers = {
"x-tenant-id": "<x-tenant-id>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'x-tenant-id': '<x-tenant-id>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
sourceWarehouseId: 'b45f6432-2462-4c6f-b00f-1d9d01000000',
targetWarehouseId: 'b45f6432-2462-4c6f-b00f-1d9d01000000',
shippingMethodId: 'b45f6432-2462-4c6f-b00f-1d9d01000000',
lineItems: [{itemId: 'b45f6432-2462-4c6f-b00f-1d9d01000000', quantity: 123}],
expectedDeliveryDate: '2023-11-07T05:31:56Z',
note: '<string>'
})
};
fetch('https://api.jtl-cloud.com/erp/v2/stock-transfers', 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/stock-transfers",
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([
'sourceWarehouseId' => 'b45f6432-2462-4c6f-b00f-1d9d01000000',
'targetWarehouseId' => 'b45f6432-2462-4c6f-b00f-1d9d01000000',
'shippingMethodId' => 'b45f6432-2462-4c6f-b00f-1d9d01000000',
'lineItems' => [
[
'itemId' => 'b45f6432-2462-4c6f-b00f-1d9d01000000',
'quantity' => 123
]
],
'expectedDeliveryDate' => '2023-11-07T05:31:56Z',
'note' => '<string>'
]),
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/stock-transfers"
payload := strings.NewReader("{\n \"sourceWarehouseId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"targetWarehouseId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"shippingMethodId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"lineItems\": [\n {\n \"itemId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"quantity\": 123\n }\n ],\n \"expectedDeliveryDate\": \"2023-11-07T05:31:56Z\",\n \"note\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", 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.post("https://api.jtl-cloud.com/erp/v2/stock-transfers")
.header("x-tenant-id", "<x-tenant-id>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"sourceWarehouseId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"targetWarehouseId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"shippingMethodId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"lineItems\": [\n {\n \"itemId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"quantity\": 123\n }\n ],\n \"expectedDeliveryDate\": \"2023-11-07T05:31:56Z\",\n \"note\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.jtl-cloud.com/erp/v2/stock-transfers")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-tenant-id"] = '<x-tenant-id>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"sourceWarehouseId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"targetWarehouseId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"shippingMethodId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"lineItems\": [\n {\n \"itemId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"quantity\": 123\n }\n ],\n \"expectedDeliveryDate\": \"2023-11-07T05:31:56Z\",\n \"note\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"stockTransferId": "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>"
}
]
}Create Stock Transfer
Creates a new stock transfer between two standard warehouses, together with its line items. The transit warehouse for the pair of warehouses is determined automatically. The new stock transfer is open and can be shipped right away.
curl --request POST \
--url https://api.jtl-cloud.com/erp/v2/stock-transfers \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-tenant-id: <x-tenant-id>' \
--data '
{
"sourceWarehouseId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"targetWarehouseId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"shippingMethodId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"lineItems": [
{
"itemId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"quantity": 123
}
],
"expectedDeliveryDate": "2023-11-07T05:31:56Z",
"note": "<string>"
}
'import requests
url = "https://api.jtl-cloud.com/erp/v2/stock-transfers"
payload = {
"sourceWarehouseId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"targetWarehouseId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"shippingMethodId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"lineItems": [
{
"itemId": "b45f6432-2462-4c6f-b00f-1d9d01000000",
"quantity": 123
}
],
"expectedDeliveryDate": "2023-11-07T05:31:56Z",
"note": "<string>"
}
headers = {
"x-tenant-id": "<x-tenant-id>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'x-tenant-id': '<x-tenant-id>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
sourceWarehouseId: 'b45f6432-2462-4c6f-b00f-1d9d01000000',
targetWarehouseId: 'b45f6432-2462-4c6f-b00f-1d9d01000000',
shippingMethodId: 'b45f6432-2462-4c6f-b00f-1d9d01000000',
lineItems: [{itemId: 'b45f6432-2462-4c6f-b00f-1d9d01000000', quantity: 123}],
expectedDeliveryDate: '2023-11-07T05:31:56Z',
note: '<string>'
})
};
fetch('https://api.jtl-cloud.com/erp/v2/stock-transfers', 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/stock-transfers",
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([
'sourceWarehouseId' => 'b45f6432-2462-4c6f-b00f-1d9d01000000',
'targetWarehouseId' => 'b45f6432-2462-4c6f-b00f-1d9d01000000',
'shippingMethodId' => 'b45f6432-2462-4c6f-b00f-1d9d01000000',
'lineItems' => [
[
'itemId' => 'b45f6432-2462-4c6f-b00f-1d9d01000000',
'quantity' => 123
]
],
'expectedDeliveryDate' => '2023-11-07T05:31:56Z',
'note' => '<string>'
]),
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/stock-transfers"
payload := strings.NewReader("{\n \"sourceWarehouseId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"targetWarehouseId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"shippingMethodId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"lineItems\": [\n {\n \"itemId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"quantity\": 123\n }\n ],\n \"expectedDeliveryDate\": \"2023-11-07T05:31:56Z\",\n \"note\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", 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.post("https://api.jtl-cloud.com/erp/v2/stock-transfers")
.header("x-tenant-id", "<x-tenant-id>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"sourceWarehouseId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"targetWarehouseId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"shippingMethodId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"lineItems\": [\n {\n \"itemId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"quantity\": 123\n }\n ],\n \"expectedDeliveryDate\": \"2023-11-07T05:31:56Z\",\n \"note\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.jtl-cloud.com/erp/v2/stock-transfers")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-tenant-id"] = '<x-tenant-id>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"sourceWarehouseId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"targetWarehouseId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"shippingMethodId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"lineItems\": [\n {\n \"itemId\": \"b45f6432-2462-4c6f-b00f-1d9d01000000\",\n \"quantity\": 123\n }\n ],\n \"expectedDeliveryDate\": \"2023-11-07T05:31:56Z\",\n \"note\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"stockTransferId": "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>"
}
]
}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.
Body
Request model for CreateStockTransfer command endpoint. Route parameters bind from the route, query parameters from the query string, everything else from the body.
Standard warehouse the items are transferred from. It must be active.
"b45f6432-2462-4c6f-b00f-1d9d01000000"
Standard warehouse the items are transferred to. It must be active and differ from the source warehouse.
"b45f6432-2462-4c6f-b00f-1d9d01000000"
Shipping method used to move the items. It must be an active shipping method of your own.
"b45f6432-2462-4c6f-b00f-1d9d01000000"
Items and quantities to transfer. At least one line item is required.
Show child attributes
Show child attributes
Date on which the items are expected to arrive in the target warehouse. Must be today or later.
Internal note on the stock transfer.
Response
The stock transfer was successfully created.
Creates a new stock transfer between two standard warehouses, together with its line items. The transit warehouse for the pair of warehouses is determined automatically. The new stock transfer is open and can be shipped right away. - Response
The ID of the newly created stock transfer.
"b45f6432-2462-4c6f-b00f-1d9d01000000"
Was this page helpful?