curl --request POST \
--url https://api.fabric.inc/v3/location-capacity \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-fabric-tenant-id: <x-fabric-tenant-id>' \
--data '
{
"locationNumber": "23",
"capacity": 30,
"schedule": {
"startDate": "2022-05-12T09:30:31Z",
"endDate": "2022-05-12T09:30:31Z"
},
"reasonCode": "holiday",
"capacityOverrideNumber": "capacityOverride1",
"notes": "Any additional info",
"createdBy": "Carl Doe",
"updatedBy": "Carl Doe"
}
'import requests
url = "https://api.fabric.inc/v3/location-capacity"
payload = {
"locationNumber": "23",
"capacity": 30,
"schedule": {
"startDate": "2022-05-12T09:30:31Z",
"endDate": "2022-05-12T09:30:31Z"
},
"reasonCode": "holiday",
"capacityOverrideNumber": "capacityOverride1",
"notes": "Any additional info",
"createdBy": "Carl Doe",
"updatedBy": "Carl Doe"
}
headers = {
"x-fabric-tenant-id": "<x-fabric-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-fabric-tenant-id': '<x-fabric-tenant-id>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
locationNumber: '23',
capacity: 30,
schedule: {startDate: '2022-05-12T09:30:31Z', endDate: '2022-05-12T09:30:31Z'},
reasonCode: 'holiday',
capacityOverrideNumber: 'capacityOverride1',
notes: 'Any additional info',
createdBy: 'Carl Doe',
updatedBy: 'Carl Doe'
})
};
fetch('https://api.fabric.inc/v3/location-capacity', 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.fabric.inc/v3/location-capacity",
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([
'locationNumber' => '23',
'capacity' => 30,
'schedule' => [
'startDate' => '2022-05-12T09:30:31Z',
'endDate' => '2022-05-12T09:30:31Z'
],
'reasonCode' => 'holiday',
'capacityOverrideNumber' => 'capacityOverride1',
'notes' => 'Any additional info',
'createdBy' => 'Carl Doe',
'updatedBy' => 'Carl Doe'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"x-fabric-tenant-id: <x-fabric-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.fabric.inc/v3/location-capacity"
payload := strings.NewReader("{\n \"locationNumber\": \"23\",\n \"capacity\": 30,\n \"schedule\": {\n \"startDate\": \"2022-05-12T09:30:31Z\",\n \"endDate\": \"2022-05-12T09:30:31Z\"\n },\n \"reasonCode\": \"holiday\",\n \"capacityOverrideNumber\": \"capacityOverride1\",\n \"notes\": \"Any additional info\",\n \"createdBy\": \"Carl Doe\",\n \"updatedBy\": \"Carl Doe\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-fabric-tenant-id", "<x-fabric-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.fabric.inc/v3/location-capacity")
.header("x-fabric-tenant-id", "<x-fabric-tenant-id>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"locationNumber\": \"23\",\n \"capacity\": 30,\n \"schedule\": {\n \"startDate\": \"2022-05-12T09:30:31Z\",\n \"endDate\": \"2022-05-12T09:30:31Z\"\n },\n \"reasonCode\": \"holiday\",\n \"capacityOverrideNumber\": \"capacityOverride1\",\n \"notes\": \"Any additional info\",\n \"createdBy\": \"Carl Doe\",\n \"updatedBy\": \"Carl Doe\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fabric.inc/v3/location-capacity")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-fabric-tenant-id"] = '<x-fabric-tenant-id>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"locationNumber\": \"23\",\n \"capacity\": 30,\n \"schedule\": {\n \"startDate\": \"2022-05-12T09:30:31Z\",\n \"endDate\": \"2022-05-12T09:30:31Z\"\n },\n \"reasonCode\": \"holiday\",\n \"capacityOverrideNumber\": \"capacityOverride1\",\n \"notes\": \"Any additional info\",\n \"createdBy\": \"Carl Doe\",\n \"updatedBy\": \"Carl Doe\"\n}"
response = http.request(request)
puts response.read_body{
"capacity": 30,
"schedule": {
"startDate": "2022-05-12T09:30:31Z",
"endDate": "2022-05-12T09:30:31Z"
},
"reasonCode": "holiday",
"capacityOverrideId": "9320183a01e214",
"capacityOverrideNumber": "capacityOverride1",
"locationNumber": "23",
"status": "CREATED",
"notes": "Any additional info",
"createdBy": "Carl Doe",
"createdAt": "2022-05-12T09:30:31Z",
"updatedBy": "Carl Doe",
"updatedAt": "2022-05-12T09:30:31Z",
"auditLogs": [
{
"lineItemId": "b03b72dc-78d8-4ea4-90fc-2fe6a1fe6569",
"auditId": "a05b72dc-78d8-4ea4-90fc-2fe6a1fe1111",
"auditType": "CANCEL",
"employeeId": 6227,
"auditedAt": "2023-03-12T09:24:54.804Z",
"source": "POS",
"reasonCode": "Scratched item",
"subReasonCode": "Scratched item",
"policyCode": "POS",
"note": "Note",
"lineItemNumber": 1,
"sku": "SKU0023",
"quantity": 1,
"amount": 2.4,
"paymentToken": {
"token": "pi_34tr6787rt",
"paymentType": "VISA"
},
"updatedFields": [
{
"fieldName": "UOM",
"fieldOriginalValue": "PK"
}
],
"attributes": {
"key": "value"
},
"isSuccess": true
}
]
}{
"type": "CLIENT_ERROR",
"errorCode": "SERVICE-4003",
"message": "Mandatory param(s): `requiredField1` is/are missing",
"errors": [
{
"type": "CLIENT_ERROR",
"errorCode": "SERVICE-4002",
"message": "Invalid value(s) specified for 'requiredField.field3'",
"errors": []
}
],
"context": {
"service": "orders",
"endpoint": "POST /v3/orders"
}
}{
"type": "CLIENT_ERROR",
"errorCode": "SERVICE-4001",
"message": "Unauthorized request",
"errors": [],
"context": {
"service": "orders",
"endpoint": "POST /v3/orders/OrderId_12345"
}
}{
"type": "SERVER_ERROR",
"errorCode": "SERVICE-5000",
"message": "Internal server error",
"errors": [],
"context": {
"service": "inventories",
"endpoint": "POST /v3/inventories/actions/find-by-geography"
}
}Create Override
Creates a new capacity override for a specific location, including schedule, reason code, and capacity limit.
curl --request POST \
--url https://api.fabric.inc/v3/location-capacity \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-fabric-tenant-id: <x-fabric-tenant-id>' \
--data '
{
"locationNumber": "23",
"capacity": 30,
"schedule": {
"startDate": "2022-05-12T09:30:31Z",
"endDate": "2022-05-12T09:30:31Z"
},
"reasonCode": "holiday",
"capacityOverrideNumber": "capacityOverride1",
"notes": "Any additional info",
"createdBy": "Carl Doe",
"updatedBy": "Carl Doe"
}
'import requests
url = "https://api.fabric.inc/v3/location-capacity"
payload = {
"locationNumber": "23",
"capacity": 30,
"schedule": {
"startDate": "2022-05-12T09:30:31Z",
"endDate": "2022-05-12T09:30:31Z"
},
"reasonCode": "holiday",
"capacityOverrideNumber": "capacityOverride1",
"notes": "Any additional info",
"createdBy": "Carl Doe",
"updatedBy": "Carl Doe"
}
headers = {
"x-fabric-tenant-id": "<x-fabric-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-fabric-tenant-id': '<x-fabric-tenant-id>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
locationNumber: '23',
capacity: 30,
schedule: {startDate: '2022-05-12T09:30:31Z', endDate: '2022-05-12T09:30:31Z'},
reasonCode: 'holiday',
capacityOverrideNumber: 'capacityOverride1',
notes: 'Any additional info',
createdBy: 'Carl Doe',
updatedBy: 'Carl Doe'
})
};
fetch('https://api.fabric.inc/v3/location-capacity', 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.fabric.inc/v3/location-capacity",
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([
'locationNumber' => '23',
'capacity' => 30,
'schedule' => [
'startDate' => '2022-05-12T09:30:31Z',
'endDate' => '2022-05-12T09:30:31Z'
],
'reasonCode' => 'holiday',
'capacityOverrideNumber' => 'capacityOverride1',
'notes' => 'Any additional info',
'createdBy' => 'Carl Doe',
'updatedBy' => 'Carl Doe'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"x-fabric-tenant-id: <x-fabric-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.fabric.inc/v3/location-capacity"
payload := strings.NewReader("{\n \"locationNumber\": \"23\",\n \"capacity\": 30,\n \"schedule\": {\n \"startDate\": \"2022-05-12T09:30:31Z\",\n \"endDate\": \"2022-05-12T09:30:31Z\"\n },\n \"reasonCode\": \"holiday\",\n \"capacityOverrideNumber\": \"capacityOverride1\",\n \"notes\": \"Any additional info\",\n \"createdBy\": \"Carl Doe\",\n \"updatedBy\": \"Carl Doe\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-fabric-tenant-id", "<x-fabric-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.fabric.inc/v3/location-capacity")
.header("x-fabric-tenant-id", "<x-fabric-tenant-id>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"locationNumber\": \"23\",\n \"capacity\": 30,\n \"schedule\": {\n \"startDate\": \"2022-05-12T09:30:31Z\",\n \"endDate\": \"2022-05-12T09:30:31Z\"\n },\n \"reasonCode\": \"holiday\",\n \"capacityOverrideNumber\": \"capacityOverride1\",\n \"notes\": \"Any additional info\",\n \"createdBy\": \"Carl Doe\",\n \"updatedBy\": \"Carl Doe\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fabric.inc/v3/location-capacity")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-fabric-tenant-id"] = '<x-fabric-tenant-id>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"locationNumber\": \"23\",\n \"capacity\": 30,\n \"schedule\": {\n \"startDate\": \"2022-05-12T09:30:31Z\",\n \"endDate\": \"2022-05-12T09:30:31Z\"\n },\n \"reasonCode\": \"holiday\",\n \"capacityOverrideNumber\": \"capacityOverride1\",\n \"notes\": \"Any additional info\",\n \"createdBy\": \"Carl Doe\",\n \"updatedBy\": \"Carl Doe\"\n}"
response = http.request(request)
puts response.read_body{
"capacity": 30,
"schedule": {
"startDate": "2022-05-12T09:30:31Z",
"endDate": "2022-05-12T09:30:31Z"
},
"reasonCode": "holiday",
"capacityOverrideId": "9320183a01e214",
"capacityOverrideNumber": "capacityOverride1",
"locationNumber": "23",
"status": "CREATED",
"notes": "Any additional info",
"createdBy": "Carl Doe",
"createdAt": "2022-05-12T09:30:31Z",
"updatedBy": "Carl Doe",
"updatedAt": "2022-05-12T09:30:31Z",
"auditLogs": [
{
"lineItemId": "b03b72dc-78d8-4ea4-90fc-2fe6a1fe6569",
"auditId": "a05b72dc-78d8-4ea4-90fc-2fe6a1fe1111",
"auditType": "CANCEL",
"employeeId": 6227,
"auditedAt": "2023-03-12T09:24:54.804Z",
"source": "POS",
"reasonCode": "Scratched item",
"subReasonCode": "Scratched item",
"policyCode": "POS",
"note": "Note",
"lineItemNumber": 1,
"sku": "SKU0023",
"quantity": 1,
"amount": 2.4,
"paymentToken": {
"token": "pi_34tr6787rt",
"paymentType": "VISA"
},
"updatedFields": [
{
"fieldName": "UOM",
"fieldOriginalValue": "PK"
}
],
"attributes": {
"key": "value"
},
"isSuccess": true
}
]
}{
"type": "CLIENT_ERROR",
"errorCode": "SERVICE-4003",
"message": "Mandatory param(s): `requiredField1` is/are missing",
"errors": [
{
"type": "CLIENT_ERROR",
"errorCode": "SERVICE-4002",
"message": "Invalid value(s) specified for 'requiredField.field3'",
"errors": []
}
],
"context": {
"service": "orders",
"endpoint": "POST /v3/orders"
}
}{
"type": "CLIENT_ERROR",
"errorCode": "SERVICE-4001",
"message": "Unauthorized request",
"errors": [],
"context": {
"service": "orders",
"endpoint": "POST /v3/orders/OrderId_12345"
}
}{
"type": "SERVER_ERROR",
"errorCode": "SERVICE-5000",
"message": "Internal server error",
"errors": [],
"context": {
"service": "inventories",
"endpoint": "POST /v3/inventories/actions/find-by-geography"
}
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
A header used by fabric to identify the tenant making the request. You must include tenant id in the authentication header for an API request to access any of fabric’s endpoints. You can retrieve the tenant id , which is also called account id, from Copilot. This header is required.
Unique request ID
x-fabric-channel-id identifies the sales channel through which the API request is being made; primarily for multichannel use cases. It is an optional field. The default US channel is 12 while the default Canada channel is 13.
Body
Request payload for creating a new Capacity Override, allowing merchants to adjust the allocation capacity of a location for a defined schedule.
A unique identifier for the location affected by the override, specified by the merchant.
"23"
The maximum number of allocations the location can handle at any given time. When current allocations reach this value, the location is considered "AtCapacity" and cannot receive further allocations.
30
The date and time range during which the override is active.
Show child attributes
Show child attributes
A merchant-defined reason for applying the capacity override, used for reporting and auditing.
"holiday"
A unique identifier for the capacity override, defined by the merchant.
"capacityOverride1"
Optional field for adding supplementary information or context related to the override.
Show child attributes
Show child attributes
"Any additional info"
Name or identifier of the user or system that created this override.
"Carl Doe"
Name or identifier of the user or system that last updated this override.
"Carl Doe"
Response
Created
Response object representing a capacity override at a specific location, including status, allocation limit, time window, and audit information.
The maximum number of allocations the location can accept at any point during the override period. When currentAllocations equals this value, the location is considered "AtCapacity" and cannot receive further orders.
30
The date and time window during which the capacity override is in effect.
Show child attributes
Show child attributes
A merchant-defined reason for the override, used for traceability or reporting (for example, holiday, peak demand).
"holiday"
A system-generated unique identifier for the capacity override.
"9320183a01e214"
A merchant-defined unique reference number for the capacity override.
"capacityOverride1"
A unique identifier for the location where the capacity override applies, as defined by the merchant.
"23"
The current status of the capacity override.
CREATED, STARTED, ENDED, CANCELLED "CREATED"
Optional notes or comments providing additional context for the override.
Show child attributes
Show child attributes
"Any additional info"
Identifier or name of the user or system that created the override.
"Carl Doe"
The timestamp when the capacity override was created, in ISO 8601 UTC format.
"2022-05-12T09:30:31Z"
Identifier or name of the user or system that last updated the override.
"Carl Doe"
The timestamp of the most recent update to the override record, in ISO 8601 UTC format.
"2022-05-12T09:30:31Z"
A list of audit log entries tracking changes made to the override.
Show child attributes
Show child attributes
Was this page helpful?
