Search for allocations by query - Fabric

Search for allocations by query

Example Requests

cURL

curl --request POST \
  --url 'https://api.fabric.inc/v3/allocations/search?limit=10' \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'x-fabric-channel-id: <x-fabric-channel-id>' \
  --header 'x-fabric-tenant-id: <x-fabric-tenant-id>' \
  --data '
{
  "filters": [
    {
      "condition": "EQ",
      "field": "allocation.items.orderId",
      "value": "Order_*"
    },
    {
      "condition": "IN",
      "field": "allocation.items.itemId",
      "value": [
        "Item_1122",
        "Item_2233"
      ]
    }
  ],
  "sort": "-allocation.createdAt"
}'

Python

import requests

url = "https://api.fabric.inc/v3/allocations/search?limit=10"

payload = {
    "filters": [
        {
            "condition": "EQ",
            "field": "allocation.items.orderId",
            "value": "Order_*"
        },
        {
            "condition": "IN",
            "field": "allocation.items.itemId",
            "value": ["Item_1122", "Item_2233"]
        }
    ],
    "sort": "-allocation.createdAt"
}
headers = {
    "x-fabric-tenant-id": "<x-fabric-tenant-id>",
    "x-fabric-channel-id": "<x-fabric-channel-id>",
    "Authorization": "Bearer <token>",
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)

JavaScript

const options = {
  method: 'POST',
  headers: {
    'x-fabric-tenant-id': '<x-fabric-tenant-id>',
    'x-fabric-channel-id': '<x-fabric-channel-id>',
    Authorization: 'Bearer <token>',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    filters: [
      {condition: 'EQ', field: 'allocation.items.orderId', value: 'Order_*'},
      {condition: 'IN', field: 'allocation.items.itemId', value: ['Item_1122', 'Item_2233']}
    ],
    sort: '-allocation.createdAt'
  })
};

fetch('https://api.fabric.inc/v3/allocations/search?limit=10', options)
  .then(res => res.json())
  .then(res => console.log(res))
  .catch(err => console.error(err));

Sample Response

Successful Response

{
  "data": [
    {
      "allocationId": "62ff5c0bec0aed3c86202c32",
      "allocationRequestId": "62ff5c0bec0aed3c86202c32",
      "createdAt": "2022-08-01T18:03:28.483971941Z",
      "locationNumber": "1234B",
      "version": 2,
      "allocationNumber": 13000004,
      "allocationExternalId": "123k4h123k",
      "auditLogs": [
        {
          "amount": 2.4,
          "auditId": "a05b72dc-78d8-4ea4-90fc-2fe6a1fe1111",
          "auditType": "CANCEL",
          "auditedAt": "2023-03-12T09:24:54.804Z",
          "employeeId": "6227",
          "isSuccess": true,
          "lineItemId": "b03b72dc-78d8-4ea4-90fc-2fe6a1fe6569",
          "lineItemNumber": 1,
          "note": "Note",
          "paymentToken": {
            "paymentType": "VISA",
            "token": "pi_34tr6787rt"
          },
          "policyCode": "POS",
          "quantity": 1,
          "reasonCode": "Scratched item",
          "sku": "SKU0023",
          "source": "POS",
          "subReasonCode": "Scratched item",
          "updatedFields": [
            {
              "fieldName": "UOM",
              "fieldOriginalValue": "PK"
            }
          ]
        }
      ],
      "currency": "USD",
      "decisionContexts": [
        {
          "allocatedOrderLineIds": ["<string>"],
          "methodConfigs": {},
          "methodName": "<string>",
          "ruleName": "<string>",
          "ruleSetId": "<string>",
          "ruleSetVersion": "<string>"
        }
      ],
      "items": [
        {
          "allocationLineNumber": 3,
          "itemId": 100064,
          "quantity": 3,
          "sku": "123k4h123k",
          "uom": "EA",
          "channelId": "4a35cc1b-4e15-46df-96c9-38a697d88dfe",
          "cost": 150.6,
          "estimatedDeliveryDate": "2022-08-01T18:03:28.483971941Z",
          "itemStatus": "PARTIALLY_ALLOCATED",
          "notes": [
            {
              "createdAt": "2022-05-12T09:30:31.198Z",
              "notes": "Fragile - handle with care",
              "user": "62272e917b12209e68751d94"
            }
          ],
          "orderId": "62f3982438bcab1951be0a19",
          "orderLineId": "134fqfaa532qrf",
          "orderLineNumber": 1,
          "orderNumber": "123k4h123k",
          "orderExternalId": "123k4h123k",
          "orderedAt": "2022-08-01T18:03:28.483971941Z",
          "parentAllocationLineNumber": 3,
          "price": 50.2,
          "reallocationReasonCode": "Reallocating due to unavailability of location number",
          "reallocationRequestId": "123k4h123k",
          "reshipReasonCode": "Stock refilled",
          "scratchQuantity": 1,
          "scratchedReasonCode": "Out of stock",
          "shippedQuantity": 1,
          "weight": 5.5
        }
      ],
      "itemsType": "WEB_SHIP",
      "locationType": "DC",
      "notifiedToPPSAt": "2022-08-01T18:03:28.483971941Z",
      "orderSubType": "ANDROID",
      "parentAllocationId": "62ff5c0bec0aed3c86202c32",
      "previousAllocatedLocationNums": ["410"],
      "recipients": [
        {
          "email": "test@example.com",
          "name": {
            "firstName": "Alex",
            "lastName": "Doe",
            "middleName": "E"
          },
          "phone": {
            "number": "123-456-7890",
            "type": "MOBILE"
          },
          "pickupType": "PRIMARY"
        }
      ],
      "shipToAddress": {
        "addressLine1": "123 Main St.",
        "city": "Seattle",
        "countryCode": "US",
        "latitude": 47.6205,
        "longitude": -122.3493,
        "postalCode": "98121",
        "region": "WA",
        "type": "Home",
        "addressLine2": "Suite 100",
        "addressLine3": "Seventh floor",
        "addressLine4": "Attention: Pat E. Kake",
        "email": "test@example.com",
        "name": {
          "firstName": "Alex",
          "lastName": "Doe",
          "middleName": "E"
        },
        "phone": {
          "number": "123-456-7890",
          "type": "MOBILE"
        }
      },
      "shipFromAddress": {
        "addressLine1": "123 Main St.",
        "city": "Seattle",
        "countryCode": "US",
        "latitude": 47.6205,
        "longitude": -122.3493,
        "postalCode": "98121",
        "region": "WA",
        "type": "Home",
        "addressLine2": "Suite 100",
        "addressLine3": "Seventh floor",
        "addressLine4": "Attention: Pat E. Kake",
        "email": "test@example.com",
        "name": {
          "firstName": "Alex",
          "lastName": "Doe",
          "middleName": "E"
        },
        "phone": {
          "number": "123-456-7890",
          "type": "MOBILE"
        }
      },
      "shipToId": "98ff5c0bec0aed3c86202c32",
      "shipmentMethod": "Parcel Post Delivery",
      "shipmentType": "SHIP_TO_ADDRESS",
      "shippedAt": "2022-08-01T20:03:28.483971941Z",
      "statusCode": "ALLOCATED",
      "type": "ALLOCATED",
      "updatedAt": "2022-08-01T20:03:28.483971941Z"
    }
  ],
  "pagination": {
    "count": 1000,
    "limit": 10,
    "offset": 1
  },
  "stats": ["<string>"]
}

Error Responses

{
  "errors": [
    {
      "message": "Invalid request",
      "type": "CLIENT_ERROR"
    }
  ],
  "message": "Bad request",
  "type": "CLIENT_ERROR"
}
{
  "message": "Unauthorized request",
  "type": "CLIENT_ERROR"
}
{
  "message": "Internal server error",
  "type": "SERVER_ERROR"
}

Headers