Find products - Fabric

Documentation Index

Fetch the complete documentation index at: /llms.txt

Use this file to discover all available pages before exploring further.

Skip to main content

Find products

cURL

curl --request POST \
  --url https://api.fabric.inc/v3/catalog-connector/products/search \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'x-fabric-tenant-id: <x-fabric-tenant-id>' \
  --data '
{
  "search": {
    "keyword": {
      "op": "CONTAINS",
      "value": "NIKE237765"
    },
    "id": {
      "op": "IN",
      "value": [\
        "6482b9524ffa4978fd9cbf5c"\
      ]
    },
    "sku": {
      "op": "IN",
      "value": [\
        "NIKE237765"\
      ]
    },
    "productName": {
      "op": "IN",
      "value": [\
        "Nike runner shoes"\
      ]
    },
    "image": {
      "op": "IN",
      "value": [\
        "https://myawsomestore.com/is/image/nike/8801290_s7"\
      ]
    },
    "itemId": {
      "op": "IN",
      "value": [\
        2700537\
      ]
    },
    "type": {
      "op": "IN",
      "value": [\
        "ITEM"\
      ]
    },
    "parentSku": {
      "op": "CONTAINS",
      "value": "NIKE237765"
    },
    "parentId": {
      "op": "IN",
      "value": [\
        "6482e47771609dfca2beb29f"\
      ]
    },
    "categoryId": {
      "op": "IN",
      "value": [\
        "648014741adc8a9de14e1a68"\
      ]
    },
    "categoryName": {
      "op": "CONTAINS",
      "value": "Shoes"
    },
    "collectionName": {
      "op": "CONTAINS",
      "value": "Flash Sale"
    },
    "bundleProductSku": {
      "op": "CONTAINS",
      "value": "BUNDLE237765"
    },
    "bundleProductName": {
      "op": "CONTAINS",
      "value": "nike"
    },
    "bundleProductId": {
      "op": "IN",
      "value": [\
        "60ad7e9d858eb50007abbb19#123124"\
      ]
    },
    "bundleProductCount": {
      "op": "GTE",
      "value": 10
    },
    "attributes": [\
      {\
        "name": "Color",\
        "op": "IN",\
        "value": [\
          "black"\
        ]\
      }\
    ],
    "attributeIds": {
      "op": "IN",
      "value": [\
        "60ad7e9d858eb50007abbb19",\
        "4aqz7e9d858eb5000cdeas12"\
      ]
    },
    "attributeTypes": {
      "op": "IN",
      "value": [\
        "TEXT",\
        "BOOLEAN",\
        "LOV",\
        "NUMBER"\
      ]
    },
    "createdAt": {
      "op": "LTE",
      "value": "2021-12-13T13:56:09.006Z"
    },
    "updatedAt": {
      "op": "LTE",
      "value": "2021-12-13T13:56:09.006Z"
    }
  },
  "sort": "+sku,-productName",
  "offset": 0,
  "limit": 10
}
'
import requests

url = "https://api.fabric.inc/v3/catalog-connector/products/search"

payload = {
    "search": {
        "keyword": {
            "op": "CONTAINS",
            "value": "NIKE237765"
        },
        "id": {
            "op": "IN",
            "value": ["6482b9524ffa4978fd9cbf5c"]
        },
        "sku": {
            "op": "IN",
            "value": ["NIKE237765"]
        },
        "productName": {
            "op": "IN",
            "value": ["Nike runner shoes"]
        },
        "image": {
            "op": "IN",
            "value": ["https://myawsomestore.com/is/image/nike/8801290_s7"]
        },
        "itemId": {
            "op": "IN",
            "value": [2700537]
        },
        "type": {
            "op": "IN",
            "value": ["ITEM"]
        },
        "parentSku": {
            "op": "CONTAINS",
            "value": "NIKE237765"
        },
        "parentId": {
            "op": "IN",
            "value": ["6482e47771609dfca2beb29f"]
        },
        "categoryId": {
            "op": "IN",
            "value": ["648014741adc8a9de14e1a68"]
        },
        "categoryName": {
            "op": "CONTAINS",
            "value": "Shoes"
        },
        "collectionName": {
            "op": "CONTAINS",
            "value": "Flash Sale"
        },
        "bundleProductSku": {
            "op": "CONTAINS",
            "value": "BUNDLE237765"
        },
        "bundleProductName": {
            "op": "CONTAINS",
            "value": "nike"
        },
        "bundleProductId": {
            "op": "IN",
            "value": ["60ad7e9d858eb50007abbb19#123124"]
        },
        "bundleProductCount": {
            "op": "GTE",
            "value": 10
        },
        "attributes": [\
            {\
                "name": "Color",\
                "op": "IN",\
                "value": ["black"]\
            }\
        ],
        "attributeIds": {
            "op": "IN",
            "value": ["60ad7e9d858eb50007abbb19", "4aqz7e9d858eb5000cdeas12"]
        },
        "attributeTypes": {
            "op": "IN",
            "value": ["TEXT", "BOOLEAN", "LOV", "NUMBER"]
        },
        "createdAt": {
            "op": "LTE",
            "value": "2021-12-13T13:56:09.006Z"
        },
        "updatedAt": {
            "op": "LTE",
            "value": "2021-12-13T13:56:09.006Z"
        }
    },
    "sort": "+sku,-productName",
    "offset": 0,
    "limit": 10
}
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({
    search: {
      keyword: {op: 'CONTAINS', value: 'NIKE237765'},
      id: {op: 'IN', value: ['6482b9524ffa4978fd9cbf5c']},
      sku: {op: 'IN', value: ['NIKE237765']},
      productName: {op: 'IN', value: ['Nike runner shoes']},
      image: {op: 'IN', value: ['https://myawsomestore.com/is/image/nike/8801290_s7']},
      itemId: {op: 'IN', value: [2700537]},
      type: {op: 'IN', value: ['ITEM']},
      parentSku: {op: 'CONTAINS', value: 'NIKE237765'},
      parentId: {op: 'IN', value: ['6482e47771609dfca2beb29f']},
      categoryId: {op: 'IN', value: ['648014741adc8a9de14e1a68']},
      categoryName: {op: 'CONTAINS', value: 'Shoes'},
      collectionName: {op: 'CONTAINS', value: 'Flash Sale'},
      bundleProductSku: {op: 'CONTAINS', value: 'BUNDLE237765'},
      bundleProductName: {op: 'CONTAINS', value: 'nike'},
      bundleProductId: {op: 'IN', value: ['60ad7e9d858eb50007abbb19#123124']},
      bundleProductCount: {op: 'GTE', value: 10},
      attributes: [{name: 'Color', op: 'IN', value: ['black']}],
      attributeIds: {op: 'IN', value: ['60ad7e9d858eb50007abbb19', '4aqz7e9d858eb5000cdeas12']},
      attributeTypes: {op: 'IN', value: ['TEXT', 'BOOLEAN', 'LOV', 'NUMBER']},
      createdAt: {op: 'LTE', value: '2021-12-13T13:56:09.006Z'},
      updatedAt: {op: 'LTE', value: '2021-12-13T13:56:09.006Z'}
    },
    sort: '+sku,-productName',
    offset: 0,
    limit: 10
  })
};

fetch('https://api.fabric.inc/v3/catalog-connector/products/search', 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/catalog-connector/products/search",\
  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([\
    'search' => [\
        'keyword' => [\
                'op' => 'CONTAINS',\
                'value' => 'NIKE237765'\
        ],\
        'id' => [\
                'op' => 'IN',\
                'value' => [\
                                '6482b9524ffa4978fd9cbf5c'\
                ]\
        ],\
        'sku' => [\
                'op' => 'IN',\
                'value' => [\
                                'NIKE237765'\
                ]\
        ],\
        'productName' => [\
                'op' => 'IN',\
                'value' => [\
                                'Nike runner shoes'\
                ]\
        ],\
        'image' => [\
                'op' => 'IN',\
                'value' => [\
                                'https://myawsomestore.com/is/image/nike/8801290_s7'\
                ]\
        ],\
        'itemId' => [\
                'op' => 'IN',\
                'value' => [\
                                2700537\
                ]\
        ],\
        'type' => [\
                'op' => 'IN',\
                'value' => [\
                                'ITEM'\
                ]\
        ],\
        'parentSku' => [\
                'op' => 'CONTAINS',\
                'value' => 'NIKE237765'\
        ],\
        'parentId' => [\
                'op' => 'IN',\
                'value' => [\
                                '6482e47771609dfca2beb29f'\
                ]\
        ],\
        'categoryId' => [\
                'op' => 'IN',\
                'value' => [\
                                '648014741adc8a9de14e1a68'\
                ]\
        ],\
        'categoryName' => [\
                'op' => 'CONTAINS',\
                'value' => 'Shoes'\
        ],\
        'collectionName' => [\
                'op' => 'CONTAINS',\
                'value' => 'Flash Sale'\
        ],\
        'bundleProductSku' => [\
                'op' => 'CONTAINS',\
                'value' => 'BUNDLE237765'\
        ],\
        'bundleProductName' => [\
                'op' => 'CONTAINS',\
                'value' => 'nike'\
        ],\
        'bundleProductId' => [\
                'op' => 'IN',\
                'value' => [\
                                '60ad7e9d858eb50007abbb19#123124'\
                ]\
        ],\
        'bundleProductCount' => [\
                'op' => 'GTE',\
                'value' => 10\
        ],\
        'attributes' => [\
                [\
                                'name' => 'Color',\
                                'op' => 'IN',\
                                'value' => [\
                                                                'black'\
                                ]\
                ]\
        ],\
        'attributeIds' => [\
                'op' => 'IN',\
                'value' => [\
                                '60ad7e9d858eb50007abbb19',\
                                '4aqz7e9d858eb5000cdeas12'\
                ]\
        ],\
        'attributeTypes' => [\
                'op' => 'IN',\
                'value' => [\
                                'TEXT',\
                                'BOOLEAN',\
                                'LOV',\
                                'NUMBER'\
                ]\
        ],\
        'createdAt' => [\
                'op' => 'LTE',\
                'value' => '2021-12-13T13:56:09.006Z'\
        ],\
        'updatedAt' => [\
                'op' => 'LTE',\
                'value' => '2021-12-13T13:56:09.006Z'\
        ]\
    ],\
    'sort' => '+sku,-productName',\
    'offset' => 0,\
    'limit' => 10\
  ]),\
  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/catalog-connector/products/search"

payload := strings.NewReader("{\n  \"search\": {\n    \"keyword\": {\n      \"op\": \"CONTAINS\",\n      \"value\": \"NIKE237765\"\n    },\n    \"id\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"6482b9524ffa4978fd9cbf5c\"\n      ]\n    },\n    \"sku\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"NIKE237765\"\n      ]\n    },\n    \"productName\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"Nike runner shoes\"\n      ]\n    },\n    \"image\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"https://myawsomestore.com/is/image/nike/8801290_s7\"\n      ]\n    },\n    \"itemId\": {\n      \"op\": \"IN\",\n      \"value\": [\n        2700537\n      ]\n    },\n    \"type\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"ITEM\"\n      ]\n    },\n    \"parentSku\": {\n      \"op\": \"CONTAINS\",\n      \"value\": \"NIKE237765\"\n    },\n    \"parentId\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"6482e47771609dfca2beb29f\"\n      ]\n    },\n    \"categoryId\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"648014741adc8a9de14e1a68\"\n      ]\n    },\n    \"categoryName\": {\n      \"op\": \"CONTAINS\",\n      \"value\": \"Shoes\"\n    },\n    \"collectionName\": {\n      \"op\": \"CONTAINS\",\n      \"value\": \"Flash Sale\"\n    },\n    \"bundleProductSku\": {\n      \"op\": \"CONTAINS\",\n      \"value\": \"BUNDLE237765\"\n    },\n    \"bundleProductName\": {\n      \"op\": \"CONTAINS\",\n      \"value\": \"nike\"\n    },\n    \"bundleProductId\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"60ad7e9d858eb50007abbb19#123124\"\n      ]\n    },\n    \"bundleProductCount\": {\n      \"op\": \"GTE\",\n      \"value\": 10\n    },\n    \"attributes\": [\n      {\n        \"name\": \"Color\",\n        \"op\": \"IN\",\n        \"value\": [\n          \"black\"\n        ]\n      }\n    ],\n    \"attributeIds\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"60ad7e9d858eb50007abbb19\",\n        \"4aqz7e9d858eb5000cdeas12\"\n      ]\n    },\n    \"attributeTypes\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"TEXT\",\n        \"BOOLEAN\",\n        \"LOV\",\n        \"NUMBER\"\n      ]\n    },\n    \"createdAt\": {\n      \"op\": \"LTE\",\n      \"value\": \"2021-12-13T13:56:09.006Z\"\n    },\n    \"updatedAt\": {\n      \"op\": \"LTE\",\n      \"value\": \"2021-12-13T13:56:09.006Z\"\n    }\n  },\n  \"sort\": \"+sku,-productName\",\n  \"offset\": 0,\n  \"limit\": 10\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/catalog-connector/products/search")
  .header("x-fabric-tenant-id", "<x-fabric-tenant-id>")
  .header("Authorization", "Bearer <token>")
  .header("Content-Type", "application/json")
  .body("{\n  \"search\": {\n    \"keyword\": {\n      \"op\": \"CONTAINS\",\n      \"value\": \"NIKE237765\"\n    },\n    \"id\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"6482b9524ffa4978fd9cbf5c\"\n      ]\n    },\n    \"sku\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"NIKE237765\"\n      ]\n    },\n    \"productName\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"Nike runner shoes\"\n      ]\n    },\n    \"image\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"https://myawsomestore.com/is/image/nike/8801290_s7\"\n      ]\n    },\n    \"itemId\": {\n      \"op\": \"IN\",\n      \"value\": [\n        2700537\n      ]\n    },\n    \"type\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"ITEM\"\n      ]\n    },\n    \"parentSku\": {\n      \"op\": \"CONTAINS\",\n      \"value\": \"NIKE237765\"\n    },\n    \"parentId\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"6482e47771609dfca2beb29f\"\n      ]\n    },\n    \"categoryId\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"648014741adc8a9de14e1a68\"\n      ]\n    },\n    \"categoryName\": {\n      \"op\": \"CONTAINS\",\n      \"value\": \"Shoes\"\n    },\n    \"collectionName\": {\n      \"op\": \"CONTAINS\",\n      \"value\": \"Flash Sale\"\n    },\n    \"bundleProductSku\": {\n      \"op\": \"CONTAINS\",\n      \"value\": \"BUNDLE237765\"\n    },\n    \"bundleProductName\": {\n      \"op\": \"CONTAINS\",\n      \"value\": \"nike\"\n    },\n    \"bundleProductId\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"60ad7e9d858eb50007abbb19#123124\"\n      ]\n    },\n    \"bundleProductCount\": {\n      \"op\": \"GTE\",\n      \"value\": 10\n    },\n    \"attributes\": [\n      {\n        \"name\": \"Color\",\n        \"op\": \"IN\",\n        \"value\": [\n          \"black\"\n        ]\n      }\n    ],\n    \"attributeIds\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"60ad7e9d858eb50007abbb19\",\n        \"4aqz7e9d858eb5000cdeas12\"\n      ]\n    },\n    \"attributeTypes\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"TEXT\",\n        \"BOOLEAN\",\n        \"LOV\",\n        \"NUMBER\"\n      ]\n    },\n    \"createdAt\": {\n      \"op\": \"LTE\",\n      \"value\": \"2021-12-13T13:56:09.006Z\"\n    },\n    \"updatedAt\": {\n      \"op\": \"LTE\",\n      \"value\": \"2021-12-13T13:56:09.006Z\"\n    }\n  },\n  \"sort\": \"+sku,-productName\",\n  \"offset\": 0,\n  \"limit\": 10\n}")
  .asString();
require 'uri'
require 'net/http'

url = URI("https://api.fabric.inc/v3/catalog-connector/products/search")

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  \"search\": {\n    \"keyword\": {\n      \"op\": \"CONTAINS\",\n      \"value\": \"NIKE237765\"\n    },\n    \"id\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"6482b9524ffa4978fd9cbf5c\"\n      ]\n    },\n    \"sku\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"NIKE237765\"\n      ]\n    },\n    \"productName\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"Nike runner shoes\"\n      ]\n    },\n    \"image\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"https://myawsomestore.com/is/image/nike/8801290_s7\"\n      ]\n    },\n    \"itemId\": {\n      \"op\": \"IN\",\n      \"value\": [\n        2700537\n      ]\n    },\n    \"type\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"ITEM\"\n      ]\n    },\n    \"parentSku\": {\n      \"op\": \"CONTAINS\",\n      \"value\": \"NIKE237765\"\n    },\n    \"parentId\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"6482e47771609dfca2beb29f\"\n      ]\n    },\n    \"categoryId\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"648014741adc8a9de14e1a68\"\n      ]\n    },\n    \"categoryName\": {\n      \"op\": \"CONTAINS\",\n      \"value\": \"Shoes\"\n    },\n    \"collectionName\": {\n      \"op\": \"CONTAINS\",\n      \"value\": \"Flash Sale\"\n    },\n    \"bundleProductSku\": {\n      \"op\": \"CONTAINS\",\n      \"value\": \"BUNDLE237765\"\n    },\n    \"bundleProductName\": {\n      \"op\": \"CONTAINS\",\n      \"value\": \"nike\"\n    },\n    \"bundleProductId\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"60ad7e9d858eb50007abbb19#123124\"\n      ]\n    },\n    \"bundleProductCount\": {\n      \"op\": \"GTE\",\n      \"value\": 10\n    },\n    \"attributes\": [\n      {\n        \"name\": \"Color\",\n        \"op\": \"IN\",\n        \"value\": [\n          \"black\"\n        ]\n      }\n    ],\n    \"attributeIds\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"60ad7e9d858eb50007abbb19\",\n        \"4aqz7e9d858eb5000cdeas12\"\n      ]\n    },\n    \"attributeTypes\": {\n      \"op\": \"IN\",\n      \"value\": [\n        \"TEXT\",\n        \"BOOLEAN\",\n        \"LOV\",\n        \"NUMBER\"\n      ]\n    },\n    \"createdAt\": {\n      \"op\": \"LTE\",\n      \"value\": \"2021-12-13T13:56:09.006Z\"\n    },\n    \"updatedAt\": {\n      \"op\": \"LTE\",\n      \"value\": \"2021-12-13T13:56:09.006Z\"\n    }\n  },\n  \"sort\": \"+sku,-productName\",\n  \"offset\": 0,\n  \"limit\": 10\n}"

response = http.request(request)
puts response.read_body

200

400

401

413

500

{
  "offset": 0,
  "limit": 10,
  "count": 1,
  "data": [\
    {\
      "sku": "NIKE237765",\
      "productName": "Nike runner shoes",\
      "id": "6482b9524ffa4978fd9cbf5c",\
      "itemId": 2700537,\
      "categoryName": "Sport Shoes",\
      "categoryId": "648014741adc8a9de14e1a68",\
      "images": [\
        "https://myawsomestore.com/is/image/nike/8801290_s7"\
      ],\
      "attributes": [\
        {\
          "name": "Color",\
          "value": "black",\
          "id": "6480216349256438cb7d53b5",\
          "type": "TEXT"\
        },\
        {\
          "name": "Wide Fit",\
          "value": false,\
          "id": "640db94f9fc28b255d155a42",\
          "type": "BOOLEAN"\
        }\
      ],\
      "type": "ITEM",\
      "variants": [\
        {\
          "sku": "NIKE237766",\
          "productName": "Nike runner white shoes",\
          "id": "648aa9280d7b561b4663038c",\
          "itemId": 2700538,\
          "images": [\
            "https://myawsomestore.com/is/image/nike/8801291_s7"\
          ],\
          "attributes": [\
            {\
              "name": "Color",\
              "value": "White",\
              "id": "6480216349256438cb7d53b5",\
              "type": "TEXT"\
            },\
            {\
              "name": "Wide Fit",\
              "value": true,\
              "id": "640db94f9fc28b255d155a42",\
              "type": "BOOLEAN"\
            },\
            {\
              "name": "Brand",\
              "value": [\
                "Nike"\
              ],\
              "id": "640db94f9fc28b255d155a42",\
              "type": "LOV"\
            }\
          ],\
          "createdAt": "2021-12-13T13:56:09.006Z",\
          "updatedAt": "2021-12-13T13:56:09.006Z"\
        }\
      ],\
      "categories": [\
        {\
          "name": "Sport Shoes",\
          "id": "648014741adc8a9de14e1a68",\
          "isRoot": false,\
          "attributes": [\
            {\
              "name": "Fit",\
              "value": "Relaxed Fit",\
              "id": "648014741adc8a9de14e1a00",\
              "type": "TEXT"\
            }\
          ]\
        },\
        {\
          "name": "Shoes",\
          "id": "648aa9258fdef29675dbce42",\
          "isRoot": true,\
          "attributes": [\
            {\
              "name": "Material",\
              "value": "Mesh"\
            }\
          ]\
        }\
      ],\
      "collections": [\
        {\
          "name": "Flash sale",\
          "id": "648055dff4aa98d6c43e02da",\
          "hierarchy": [\
            {\
              "name": "Flash Sale",\
              "id": "648055dff4aa98d6c43e02da",\
              "isRoot": false,\
              "attributes": [\
                {\
                  "name": "Duration",\
                  "value": 600,\
                  "type": "NUMBER"\
                }\
              ]\
            },\
            {\
              "name": "Sales",\
              "id": "648055e0f4aa98d6c43e02f7",\
              "isRoot": true\
            }\
          ]\
        }\
      ],\
      "createdAt": "2021-12-13T13:56:09.006Z",\
      "updatedAt": "2021-12-13T13:56:09.006Z"\
    }\
  ]
}
{
  "message": "Request is invalid",
  "type": "Bad request",
  "errors": [\
    {\
      "type": "CLIENT_ERROR",\
      "message": "Invalid request. Unable to find/create product"\
    }\
  ]
}
{
  "type": "UNAUTHORIZED_ERROR",
  "message": "Requester is unauthorized"
}
{
  "type": "PAYLOAD_LIMIT_EXCEEDED_ERROR",
  "message": "Payload exceeds maximum configured size"
}
{
  "type": "SERVER_ERROR",
  "message": "Internal Server Error"
}

POST

/

catalog-connector

/

products

/

search

Try it

Find products

cURL

import requests

url = "https://api.fabric.inc/v3/catalog-connector/products/search"

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

print(response.text)
<?php

$curl = curl_init();

$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/catalog-connector/products/search"

req, _ := http.NewRequest("POST", url, payload)

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
    body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
require 'uri'
require 'net/http'

url = URI("https://api.fabric.inc/v3/catalog-connector/products/search")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

response = http.request(request)
puts response.read_body

200

400

401

413

500

{
  "type": "UNAUTHORIZED_ERROR",
  "message": "Requester is unauthorized"
}
{
  "type": "PAYLOAD_LIMIT_EXCEEDED_ERROR",
  "message": "Payload exceeds maximum configured size"
}
{
  "type": "SERVER_ERROR",
  "message": "Internal Server Error"
}

Authorizations

​

Authorization

string

header

required

This is the authorization token used to authenticate the request. You must pass the access token generated from the system app. For more information, see the Making your first API request section.

Headers

​

x-fabric-tenant-id

string

required

A header retrieved from your Copilot Account Details that's used by the API to identify the tenant making the request. Tenant ID must be included in the authentication header for API requests to access any of fabric’s endpoints.

​

x-fabric-request-id

string

Unique request ID

Query Parameters

​

locale

string

required

The language code, which is a combination of language (ISO 639 format) and country (ISO 3166 format).

The default value is en-US.

​

excludeBundleProducts

boolean

A flag indicating whether the products associated with a bundle should be excluded from the response. Set it to true to exclude products of a bundle and false to include them in the response.

​

excludeCollections

boolean

A flag indicating whether the collections should be excluded from the response. Set it to true to exclude collections and false to include them in the response.

​

excludeCategories

boolean

A flag indicating whether the categories should be excluded from the response. Set it to true to exclude categories and false to include them in the response.

​

excludeVariants

boolean

A flag indicating whether item variants should be excluded from the response. Set it to true to exclude variants and false to include them in the response.

​

excludeAttributes

boolean

A flag indicating whether attributes should be excluded from the response. Set it to true to exclude attributes and false to include them in the response.

Body

application/json

​

search

object

required

The search criteria to find products.

Showchild attributes

Example:

{
  "keyword": { "op": "CONTAINS", "value": "NIKE237765" },
  "id": {
    "op": "IN",
    "value": ["6482b9524ffa4978fd9cbf5c"]
  },
  "sku": { "op": "IN", "value": ["NIKE237765"] },
  "productName": {
    "op": "IN",
    "value": ["Nike runner shoes"]
  },
  "image": {
    "op": "IN",
    "value": [\
      "https://myawsomestore.com/is/image/nike/8801290_s7"\
    ]
  },
  "itemId": { "op": "IN", "value": [2700537] },
  "type": { "op": "IN", "value": ["ITEM"] },
  "parentSku": { "op": "CONTAINS", "value": "NIKE237765" },
  "parentId": {
    "op": "IN",
    "value": ["6482e47771609dfca2beb29f"]
  },
  "categoryId": {
    "op": "IN",
    "value": ["648014741adc8a9de14e1a68"]
  },
  "categoryName": { "op": "CONTAINS", "value": "Shoes" },
  "collectionName": { "op": "CONTAINS", "value": "Flash Sale" },
  "bundleProductSku": { "op": "CONTAINS", "value": "BUNDLE237765" },
  "bundleProductName": { "op": "CONTAINS", "value": "nike" },
  "bundleProductId": {
    "op": "IN",
    "value": ["60ad7e9d858eb50007abbb19#123124"]
  },
  "bundleProductCount": { "op": "GTE", "value": 10 },
  "attributes": [\
    {\
      "name": "Color",\
      "op": "IN",\
      "value": ["black"]\
    }\
  ],
  "attributeIds": {
    "op": "IN",
    "value": [\
      "60ad7e9d858eb50007abbb19",\
      "4aqz7e9d858eb5000cdeas12"\
    ]
  },
  "attributeTypes": {
    "op": "IN",
    "value": ["TEXT", "BOOLEAN", "LOV", "NUMBER"]
  },
  "createdAt": {
    "op": "LTE",
    "value": "2021-12-13T13:56:09.006Z"
  },
  "updatedAt": {
    "op": "LTE",
    "value": "2021-12-13T13:56:09.006Z"
  }
}

​

sort

string

The sorting criteria. Currently, the supported values are sku, type, productName, itemId, categoryName, and createdAt. Use - to view the results in a descending order and + for ascending.

Example:

"+sku,-productName"

​

offset

integer

default:0

The number of records to skip before returning records. For example, when the offset is 20 and limit is 10, the system returns records from 21 to 30.

Example:

2

​

limit

integer

default:10

The maximum number of records per page.

Example:

10

Response

200

application/json

OK

Product Search Result list by IDs

​

offset

integer

default:0

The number of records to skip before returning records. For example, with offset of 20 and limit of 10, the system returns the records from 21-30.

Example:

5

​

limit

integer

default:10

The maximum number of records per page.

Example:

10

​

count

integer

The total number of records.

Example:

100

​

data

object[]

The details of a product based on the product type.

Showchild attributes

Was this page helpful?

YesNo

Retrieve jobs Retrieve a product by SKU

Ctrl+I

Assistant

Responses are generated using AI and may contain mistakes.