curl --request POST \
--url https://prod01.oms.fabric.inc/api/v2/allocation/query \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-site-context: <x-site-context>' \
--data '
{
"filters": {
"retail": {
"locationNum": 12
},
"orderSubTotal": {
"gte": 1300,
"lt": 1400
},
"orderNumber": "order-*Z",
"statusCode": [
"ORDER_CREATED"
],
"createdAt": {
"lt": "2022-09-11T23:12:00.123Z"
},
"shipInfo": {
"shipToId": [
"23434",
"23436"
]
}
},
"limit": 10,
"offset": 0,
"sortBy": "updatedAt",
"sortDirection": "desc"
}
'import requests
url = "https://prod01.oms.fabric.inc/api/v2/allocation/query"
payload = {
"filters": {
"retail": { "locationNum": 12 },
"orderSubTotal": {
"gte": 1300,
"lt": 1400
},
"orderNumber": "order-*Z",
"statusCode": ["ORDER_CREATED"],
"createdAt": { "lt": "2022-09-11T23:12:00.123Z" },
"shipInfo": { "shipToId": ["23434", "23436"] }
},
"limit": 10,
"offset": 0,
"sortBy": "updatedAt",
"sortDirection": "desc"
}
headers = {
"x-site-context": "<x-site-context>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'x-site-context': '<x-site-context>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
filters: {
retail: {locationNum: 12},
orderSubTotal: {gte: 1300, lt: 1400},
orderNumber: 'order-*Z',
statusCode: ['ORDER_CREATED'],
createdAt: {lt: '2022-09-11T23:12:00.123Z'},
shipInfo: {shipToId: ['23434', '23436']}
},
limit: 10,
offset: 0,
sortBy: 'updatedAt',
sortDirection: 'desc'
})
};
fetch('https://prod01.oms.fabric.inc/api/v2/allocation/query', 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://prod01.oms.fabric.inc/api/v2/allocation/query",
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([
'filters' => [
'retail' => [
'locationNum' => 12
],
'orderSubTotal' => [
'gte' => 1300,
'lt' => 1400
],
'orderNumber' => 'order-*Z',
'statusCode' => [
'ORDER_CREATED'
],
'createdAt' => [
'lt' => '2022-09-11T23:12:00.123Z'
],
'shipInfo' => [
'shipToId' => [
'23434',
'23436'
]
]
],
'limit' => 10,
'offset' => 0,
'sortBy' => 'updatedAt',
'sortDirection' => 'desc'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"x-site-context: <x-site-context>"
],
]);
$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://prod01.oms.fabric.inc/api/v2/allocation/query"
payload := strings.NewReader("{\n \"filters\": {\n \"retail\": {\n \"locationNum\": 12\n },\n \"orderSubTotal\": {\n \"gte\": 1300,\n \"lt\": 1400\n },\n \"orderNumber\": \"order-*Z\",\n \"statusCode\": [\n \"ORDER_CREATED\"\n ],\n \"createdAt\": {\n \"lt\": \"2022-09-11T23:12:00.123Z\"\n },\n \"shipInfo\": {\n \"shipToId\": [\n \"23434\",\n \"23436\"\n ]\n }\n },\n \"limit\": 10,\n \"offset\": 0,\n \"sortBy\": \"updatedAt\",\n \"sortDirection\": \"desc\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-site-context", "<x-site-context>")
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://prod01.oms.fabric.inc/api/v2/allocation/query")
.header("x-site-context", "<x-site-context>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"filters\": {\n \"retail\": {\n \"locationNum\": 12\n },\n \"orderSubTotal\": {\n \"gte\": 1300,\n \"lt\": 1400\n },\n \"orderNumber\": \"order-*Z\",\n \"statusCode\": [\n \"ORDER_CREATED\"\n ],\n \"createdAt\": {\n \"lt\": \"2022-09-11T23:12:00.123Z\"\n },\n \"shipInfo\": {\n \"shipToId\": [\n \"23434\",\n \"23436\"\n ]\n }\n },\n \"limit\": 10,\n \"offset\": 0,\n \"sortBy\": \"updatedAt\",\n \"sortDirection\": \"desc\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://prod01.oms.fabric.inc/api/v2/allocation/query")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-site-context"] = '<x-site-context>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"filters\": {\n \"retail\": {\n \"locationNum\": 12\n },\n \"orderSubTotal\": {\n \"gte\": 1300,\n \"lt\": 1400\n },\n \"orderNumber\": \"order-*Z\",\n \"statusCode\": [\n \"ORDER_CREATED\"\n ],\n \"createdAt\": {\n \"lt\": \"2022-09-11T23:12:00.123Z\"\n },\n \"shipInfo\": {\n \"shipToId\": [\n \"23434\",\n \"23436\"\n ]\n }\n },\n \"limit\": 10,\n \"offset\": 0,\n \"sortBy\": \"updatedAt\",\n \"sortDirection\": \"desc\"\n}"
response = http.request(request)
puts response.read_body[
{
"allocationId": "62ff5c0bec0aed3c86202c32",
"parentAllocationId": "62ff5c0bec0aed3c86202c32",
"locationNum": "1234B",
"items": [
{
"itemId": "100064",
"sku": "123k4h123k",
"quantity": 3,
"allocationLineNumber": 3,
"orderLineId": "134fqfaa532qrf",
"orderId": "123k4h123k",
"orderDate": "2022-08-01T18:03:28.483971941Z",
"estimatedDeliveryDate": "2022-08-01T18:03:28.483971941Z",
"parentAllocationLineNumber": 3,
"reallocationRequestId": "123k4h123k",
"shippedQuantity": 1,
"scratchQuantity": 1,
"scratchedReasonCode": "Scratched during shipment",
"reshipReasonCode": "Reshipping during shipment",
"reallocationReasonCode": "Reallocating due to unavailability of location number",
"channelId": "12",
"segment": null,
"vendorId": "56",
"title": "Demo",
"weight": 5.5,
"cost": 500.2,
"price": 50.2,
"itemStatus": "ALLOCATED",
"attributes": {},
"uom": "KG"
}
],
"version": 2,
"allocationRequestId": "62ff5c0bec0aed3c86202c32",
"allocationNum": "xxyyzz12345",
"sentToPPSDate": "2022-08-01T18:03:28.483971941Z",
"allocationDate": "2022-08-01T18:03:28.483971941Z",
"updatedAt": "2022-08-01T20:03:28.483971941Z",
"type": "ALLOCATED",
"previousAllocationLocationNum": 410,
"poNumber": "1125",
"itemsType": "WEB_SHIP",
"orderSubType": "BORDERFREE",
"vendorId": "56",
"shipDate": null,
"shipType": "SHIP_TO_ADDRESS",
"shipMethod": "Overnight Delivery",
"shipToId": "98ff5c0bec0aed3c86202c32",
"statusCode": "PENDING_PICK",
"locationType": "1234B",
"shipToAddress": {},
"recipient": [
{
"name": {
"first": "John",
"middle": "Middle",
"last": "Doe"
},
"email": "demo@xyz.inc",
"phone": {
"number": "55555555555",
"type": "MOBILE"
},
"pickupType": "Primary"
}
],
"auditLogs": [
{
"lineItemId": "4",
"auditId": "62272e917b12209e68751d94",
"auditType": "UPDATE",
"employeeId": "62272e917b12209e68751d94",
"auditTimestamp": "2022-05-12T09:24:54.804Z",
"source": "POS",
"reasonCode": "POS",
"subReasonCode": "POS",
"policyCode": "POS",
"note": "Note",
"lineItemNumber": 1,
"sku": "F5F",
"quantity": 1,
"amount": 2.4,
"paymentToken": {
"token": "pi_34tr6787rt",
"paymentType": "VISA"
},
"success": true,
"paymentResponse": {},
"updatedFields": [
{
"fieldName": "UOM",
"fieldOriginalValue": "PK"
}
],
"attributes": {}
}
]
}
]{
"message": "Data not found"
}{
"message": "Internal Server Error"
}Get allocation by query
Finds allocation details based on filter criteria
curl --request POST \
--url https://prod01.oms.fabric.inc/api/v2/allocation/query \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-site-context: <x-site-context>' \
--data '
{
"filters": {
"retail": {
"locationNum": 12
},
"orderSubTotal": {
"gte": 1300,
"lt": 1400
},
"orderNumber": "order-*Z",
"statusCode": [
"ORDER_CREATED"
],
"createdAt": {
"lt": "2022-09-11T23:12:00.123Z"
},
"shipInfo": {
"shipToId": [
"23434",
"23436"
]
}
},
"limit": 10,
"offset": 0,
"sortBy": "updatedAt",
"sortDirection": "desc"
}
'import requests
url = "https://prod01.oms.fabric.inc/api/v2/allocation/query"
payload = {
"filters": {
"retail": { "locationNum": 12 },
"orderSubTotal": {
"gte": 1300,
"lt": 1400
},
"orderNumber": "order-*Z",
"statusCode": ["ORDER_CREATED"],
"createdAt": { "lt": "2022-09-11T23:12:00.123Z" },
"shipInfo": { "shipToId": ["23434", "23436"] }
},
"limit": 10,
"offset": 0,
"sortBy": "updatedAt",
"sortDirection": "desc"
}
headers = {
"x-site-context": "<x-site-context>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'x-site-context': '<x-site-context>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
filters: {
retail: {locationNum: 12},
orderSubTotal: {gte: 1300, lt: 1400},
orderNumber: 'order-*Z',
statusCode: ['ORDER_CREATED'],
createdAt: {lt: '2022-09-11T23:12:00.123Z'},
shipInfo: {shipToId: ['23434', '23436']}
},
limit: 10,
offset: 0,
sortBy: 'updatedAt',
sortDirection: 'desc'
})
};
fetch('https://prod01.oms.fabric.inc/api/v2/allocation/query', 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://prod01.oms.fabric.inc/api/v2/allocation/query",
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([
'filters' => [
'retail' => [
'locationNum' => 12
],
'orderSubTotal' => [
'gte' => 1300,
'lt' => 1400
],
'orderNumber' => 'order-*Z',
'statusCode' => [
'ORDER_CREATED'
],
'createdAt' => [
'lt' => '2022-09-11T23:12:00.123Z'
],
'shipInfo' => [
'shipToId' => [
'23434',
'23436'
]
]
],
'limit' => 10,
'offset' => 0,
'sortBy' => 'updatedAt',
'sortDirection' => 'desc'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"x-site-context: <x-site-context>"
],
]);
$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://prod01.oms.fabric.inc/api/v2/allocation/query"
payload := strings.NewReader("{\n \"filters\": {\n \"retail\": {\n \"locationNum\": 12\n },\n \"orderSubTotal\": {\n \"gte\": 1300,\n \"lt\": 1400\n },\n \"orderNumber\": \"order-*Z\",\n \"statusCode\": [\n \"ORDER_CREATED\"\n ],\n \"createdAt\": {\n \"lt\": \"2022-09-11T23:12:00.123Z\"\n },\n \"shipInfo\": {\n \"shipToId\": [\n \"23434\",\n \"23436\"\n ]\n }\n },\n \"limit\": 10,\n \"offset\": 0,\n \"sortBy\": \"updatedAt\",\n \"sortDirection\": \"desc\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-site-context", "<x-site-context>")
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://prod01.oms.fabric.inc/api/v2/allocation/query")
.header("x-site-context", "<x-site-context>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"filters\": {\n \"retail\": {\n \"locationNum\": 12\n },\n \"orderSubTotal\": {\n \"gte\": 1300,\n \"lt\": 1400\n },\n \"orderNumber\": \"order-*Z\",\n \"statusCode\": [\n \"ORDER_CREATED\"\n ],\n \"createdAt\": {\n \"lt\": \"2022-09-11T23:12:00.123Z\"\n },\n \"shipInfo\": {\n \"shipToId\": [\n \"23434\",\n \"23436\"\n ]\n }\n },\n \"limit\": 10,\n \"offset\": 0,\n \"sortBy\": \"updatedAt\",\n \"sortDirection\": \"desc\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://prod01.oms.fabric.inc/api/v2/allocation/query")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-site-context"] = '<x-site-context>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"filters\": {\n \"retail\": {\n \"locationNum\": 12\n },\n \"orderSubTotal\": {\n \"gte\": 1300,\n \"lt\": 1400\n },\n \"orderNumber\": \"order-*Z\",\n \"statusCode\": [\n \"ORDER_CREATED\"\n ],\n \"createdAt\": {\n \"lt\": \"2022-09-11T23:12:00.123Z\"\n },\n \"shipInfo\": {\n \"shipToId\": [\n \"23434\",\n \"23436\"\n ]\n }\n },\n \"limit\": 10,\n \"offset\": 0,\n \"sortBy\": \"updatedAt\",\n \"sortDirection\": \"desc\"\n}"
response = http.request(request)
puts response.read_body[
{
"allocationId": "62ff5c0bec0aed3c86202c32",
"parentAllocationId": "62ff5c0bec0aed3c86202c32",
"locationNum": "1234B",
"items": [
{
"itemId": "100064",
"sku": "123k4h123k",
"quantity": 3,
"allocationLineNumber": 3,
"orderLineId": "134fqfaa532qrf",
"orderId": "123k4h123k",
"orderDate": "2022-08-01T18:03:28.483971941Z",
"estimatedDeliveryDate": "2022-08-01T18:03:28.483971941Z",
"parentAllocationLineNumber": 3,
"reallocationRequestId": "123k4h123k",
"shippedQuantity": 1,
"scratchQuantity": 1,
"scratchedReasonCode": "Scratched during shipment",
"reshipReasonCode": "Reshipping during shipment",
"reallocationReasonCode": "Reallocating due to unavailability of location number",
"channelId": "12",
"segment": null,
"vendorId": "56",
"title": "Demo",
"weight": 5.5,
"cost": 500.2,
"price": 50.2,
"itemStatus": "ALLOCATED",
"attributes": {},
"uom": "KG"
}
],
"version": 2,
"allocationRequestId": "62ff5c0bec0aed3c86202c32",
"allocationNum": "xxyyzz12345",
"sentToPPSDate": "2022-08-01T18:03:28.483971941Z",
"allocationDate": "2022-08-01T18:03:28.483971941Z",
"updatedAt": "2022-08-01T20:03:28.483971941Z",
"type": "ALLOCATED",
"previousAllocationLocationNum": 410,
"poNumber": "1125",
"itemsType": "WEB_SHIP",
"orderSubType": "BORDERFREE",
"vendorId": "56",
"shipDate": null,
"shipType": "SHIP_TO_ADDRESS",
"shipMethod": "Overnight Delivery",
"shipToId": "98ff5c0bec0aed3c86202c32",
"statusCode": "PENDING_PICK",
"locationType": "1234B",
"shipToAddress": {},
"recipient": [
{
"name": {
"first": "John",
"middle": "Middle",
"last": "Doe"
},
"email": "demo@xyz.inc",
"phone": {
"number": "55555555555",
"type": "MOBILE"
},
"pickupType": "Primary"
}
],
"auditLogs": [
{
"lineItemId": "4",
"auditId": "62272e917b12209e68751d94",
"auditType": "UPDATE",
"employeeId": "62272e917b12209e68751d94",
"auditTimestamp": "2022-05-12T09:24:54.804Z",
"source": "POS",
"reasonCode": "POS",
"subReasonCode": "POS",
"policyCode": "POS",
"note": "Note",
"lineItemNumber": 1,
"sku": "F5F",
"quantity": 1,
"amount": 2.4,
"paymentToken": {
"token": "pi_34tr6787rt",
"paymentType": "VISA"
},
"success": true,
"paymentResponse": {},
"updatedFields": [
{
"fieldName": "UOM",
"fieldOriginalValue": "PK"
}
],
"attributes": {}
}
]
}
]{
"message": "Data not found"
}{
"message": "Internal Server Error"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
The x-site-context header is a JSON object that contains information about the source you wish to pull from. The mandatory account is the 24 character identifier found in Copilot. The channel (Sales channel ID), stage (environment name), and date attributes can be used to further narrow the scope of your data source.
"{\"date\": \"2023-01-01T00:00:00.000Z\", \"channel\": 12, \"account\": \"1234abcd5678efgh9ijklmno\",\"stage\":\"production\"}"
Body
Filter criteria
Filter criteria.
Note: To filter records, the json structure should be similar to target entity structure. That is, order, shipment, etc.
Show child attributes
Show child attributes
{
"retail": { "locationNum": 12 },
"orderSubTotal": { "gte": 1300, "lt": 1400 },
"orderNumber": "order-*Z",
"statusCode": ["ORDER_CREATED"],
"createdAt": { "lt": "2022-09-11T23:12:00.123Z" },
"shipInfo": { "shipToId": ["23434", "23436"] }
}
Numbers of records to be returned
10
Number of records to skipped
0
Sorting criteria based on attributes
"updatedAt"
Sorting direction such as ascending or descending
asc, desc "desc"
Response
Matched Allocations
Unique ID for an allocation document
"62ff5c0bec0aed3c86202c32"
Same as previous allocation document while creating new allocation
"62ff5c0bec0aed3c86202c32"
Tenant's ship-from location ID
"1234B"
List of items to be shipped
Show child attributes
Show child attributes
Current version of allocation document
2
Allocation request ID used for tracking internal communication. Required to update allocation details.
"62ff5c0bec0aed3c86202c32"
Allocation number for client tracking
"xxyyzz12345"
Time of sending allocation event to PPS
"2022-08-01T18:03:28.483971941Z"
Time of allocation creation and when it was stored in database
"2022-08-01T18:03:28.483971941Z"
Time of allocation update
"2022-08-01T20:03:28.483971941Z"
Allocation type
ALLOCATED, SCRATCHED, RETURNED "ALLOCATED"
In reallocation scenarios, keeps track of the previously allocation location numbers
410
Purchase order number (generally, vendor-generated)
"1125"
Items type
WEB_SHIP, POS, WEB "WEB_SHIP"
Sub-type of order
IOS, Android, International, Borderfree "BORDERFREE"
Vendor ID
"56"
Estimated ship date
null
Optional field for shipment type
"SHIP_TO_ADDRESS"
Optional field for shipment method
"Overnight Delivery"
Unique Id for delivery address
"98ff5c0bec0aed3c86202c32"
Allocation status code
ALLOCATED, PENDING_DROP, PENDING_PICK, SHIPPED, PARTIALLY_SHIPPED, REALLOCATED, CANCELLED, PARTIALLY_CANCELLED "PENDING_PICK"
Tenant's ship-from location type
"1234B"
Recipient details such as phone number, email, and name
Show child attributes
Show child attributes
Logs with updated fields
Show child attributes
Show child attributes
Was this page helpful?
