Skip to main content
POST
/
product-attributes
/
search
Find Attributes
curl --request POST \
  --url https://api.fabric.inc/v3/product-attributes/search \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "match": {
    "id": {
      "op": "IN",
      "value": [
        "blue"
      ]
    },
    "name": {
      "op": "IN",
      "value": [
        "blue"
      ],
      "locale": [
        "en_US"
      ]
    },
    "description": {
      "op": "IN",
      "value": [
        "blue"
      ]
    },
    "isLocalizable": {
      "op": "EQUALS",
      "value": true
    },
    "isMandatory": {
      "op": "EQUALS",
      "value": true
    },
    "isManualOverwrite": {
      "op": "EQUALS",
      "value": true
    },
    "isFormulaSet": {
      "op": "EQUALS",
      "value": true
    },
    "isCustomFormulaSet": {
      "op": "EQUALS",
      "value": true
    },
    "target": {
      "op": "EQUALS",
      "value": "PRODUCT"
    },
    "type": {
      "op": "EQUALS",
      "value": "TEXT"
    },
    "subType": {
      "op": "EQUALS",
      "value": "SINGLE"
    },
    "createdAt": {
      "op": "RANGE",
      "fromValue": "2022-04-20T10:24:36.162Z",
      "toValue": "2023-04-20T10:24:36.162Z"
    },
    "updatedAt": {
      "op": "RANGE",
      "fromValue": "2022-04-20T10:24:36.162Z",
      "toValue": "2023-04-20T10:24:36.162Z"
    }
  },
  "sort": "+name,-isMandatory",
  "offset": 2,
  "limit": 10
}
'
{
  "data": [
    {
      "id": "64c1557de1f95e3214660ceb",
      "name": "serialNumber",
      "description": "Serial number which starts with the 1 and keeps incrementing 10 for the subsequent call",
      "type": "SERIAL",
      "target": "PRODUCT",
      "isLocalizable": false,
      "validation": {
        "isMandatory": false,
        "isManualOverwrite": false,
        "formula": "",
        "startWith": 1,
        "increment": 10
      },
      "updatedAt": "2023-07-26T17:18:47.162Z",
      "createdAt": "2023-07-26T17:18:47.162Z",
      "updatedBy": "[email protected]"
    },
    {
      "id": "64c1557ce1f95e3214660ce6",
      "name": "isLive",
      "description": "Boolean attribute to capture if the product is live.",
      "type": "BOOLEAN",
      "target": "PRODUCT",
      "isLocalizable": false,
      "validation": {
        "isMandatory": true
      },
      "updatedAt": "2023-07-26T17:18:47.162Z",
      "createdAt": "2023-07-26T17:18:47.162Z",
      "updatedBy": "[email protected]"
    },
    {
      "id": "64c1557be1f95e3214660ce1",
      "name": "Date Attribute",
      "description": "Attribute to capture date",
      "type": "DATETIME",
      "target": "PRODUCT",
      "isLocalizable": false,
      "validation": {
        "isMandatory": false,
        "dateFormat": "MM/DD/YYYY",
        "formula": ""
      },
      "updatedAt": "2023-07-26T17:18:47.162Z",
      "createdAt": "2023-07-26T17:18:47.162Z",
      "updatedBy": "[email protected]"
    },
    {
      "id": "64c1557be1f95e3214660c12",
      "name": "percentage",
      "description": "Attribute to capture percentage",
      "type": "NUMBER",
      "isLocalizable": false,
      "target": "PRODUCT",
      "validation": {
        "isMandatory": false,
        "isManualOverwrite": false,
        "formula": "",
        "isDecimal": true,
        "max": 100,
        "min": 0
      },
      "updatedAt": "2023-07-26T17:18:47.162Z",
      "createdAt": "2023-07-26T17:18:47.162Z",
      "updatedBy": "[email protected]"
    },
    {
      "id": "64c1557be1f95e3214660cdc",
      "name": "Weight in pounds",
      "description": "Weight of the parcel in pounds",
      "type": "NUMBER",
      "isLocalizable": false,
      "target": "PRODUCT",
      "validation": {
        "isMandatory": false,
        "isManualOverwrite": false,
        "formula": "(async ()=> parseFloat(await attribute('64c15579e1f95e3214660cce')) * 2.2)()",
        "isDecimal": true
      },
      "updatedAt": "2023-07-26T17:18:47.162Z",
      "createdAt": "2023-07-26T17:18:47.162Z",
      "updatedBy": "[email protected]"
    },
    {
      "id": "64c15579e1f95e3214660cce",
      "name": "Weight",
      "description": "Weight of the parcel",
      "type": "NUMBER",
      "isLocalizable": false,
      "target": "PRODUCT",
      "validation": {
        "isMandatory": false,
        "isManualOverwrite": false,
        "formula": "",
        "isDecimal": true
      },
      "updatedAt": "2023-07-26T17:18:47.162Z",
      "createdAt": "2023-07-26T17:18:47.162Z",
      "updatedBy": "[email protected]"
    },
    {
      "id": "64c1557ae1f95e3214660cd9",
      "name": "Age",
      "description": "Attribute to capture age",
      "type": "NUMBER",
      "isLocalizable": false,
      "target": "PRODUCT",
      "validation": {
        "isMandatory": false,
        "isManualOverwrite": false,
        "formula": "",
        "isDecimal": false
      },
      "updatedAt": "2023-07-26T17:18:47.162Z",
      "createdAt": "2023-07-26T17:18:47.162Z",
      "updatedBy": "[email protected]"
    },
    {
      "id": "64c15579e1f95e3214660abc",
      "name": "MultiOption",
      "description": "Color Attribute",
      "isLocalizable": false,
      "target": "PRODUCT",
      "type": "OPTIONS",
      "validation": {
        "isMandatory": false,
        "isManualOverwrite": false,
        "subType": "MULTIPLE",
        "acceptedValues": [
          "Colour",
          "Flavour"
        ]
      },
      "updatedAt": "2023-07-26T17:18:47.162Z",
      "createdAt": "2023-07-26T17:18:47.162Z",
      "updatedBy": "[email protected]"
    },
    {
      "id": "64c15579e1f95e3214660cce",
      "name": "MultiOption",
      "description": "Color Attribute",
      "isLocalizable": true,
      "target": "PRODUCT",
      "type": "OPTIONS",
      "validation": {
        "isMandatory": false,
        "isManualOverwrite": false,
        "subType": "MULTIPLE",
        "localizedAcceptedValues": {
          "en-GB": [
            "Colour",
            "Flavour"
          ],
          "en-US": [
            "Color",
            "Flavor"
          ]
        }
      },
      "localizedProperties": {
        "en-GB": {
          "name": "Multi-Option"
        }
      },
      "updatedAt": "2023-07-26T17:18:47.162Z",
      "createdAt": "2023-07-26T17:18:47.162Z",
      "updatedBy": "[email protected]"
    },
    {
      "id": "64c1557ae1f95e3214660dd3",
      "name": "Color",
      "description": "Color Attribute",
      "isLocalizable": true,
      "target": "PRODUCT",
      "type": "TEXT",
      "validation": {
        "isMandatory": false,
        "subType": "TEXT_AREA",
        "formula": "",
        "isManualOverwrite": false
      },
      "localizedProperties": {
        "en-GB": {
          "name": "Colour"
        }
      },
      "updatedAt": "2023-07-26T17:18:47.162Z",
      "createdAt": "2023-07-26T17:18:47.162Z",
      "updatedBy": "[email protected]"
    },
    {
      "id": "64c15577e1f95e3214660cbe",
      "name": "Small Text example",
      "isLocalizable": false,
      "target": "PRODUCT",
      "type": "TEXT",
      "validation": {
        "isMandatory": false,
        "subType": "SMALL_TEXT",
        "isManualOverwrite": false,
        "formula": ""
      },
      "updatedAt": "2023-07-26T17:18:47.162Z",
      "createdAt": "2023-07-26T17:18:47.162Z",
      "updatedBy": "[email protected]"
    }
  ],
  "offset": 0,
  "limit": 10,
  "count": 10
}

Authorizations

Authorization
string
header
required

S2S access token (JWT) from fabric Identity service (during Login)

Headers

x-fabric-tenant-id
string

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.

Example:

"517fa9dfd42d8b00g1o3k312"

x-fabric-request-id
string

Unique request ID

Example:

"263e731c-45c8-11ed-b878-0242ac120002"

Body

application/json

Request body for attribute search

match
object
required

Specification for matching attributes

sort
string

Criteria to sort response. Sorting is supported only on createdAt, updatedAt, type, name and isMandatory. - refers to descending while + refers to ascending order

Example:

"+name,-isMandatory"

offset
integer<int32>
default:0

Number of records to skip before returning records. For example, offset=20, limit=10 returns records 21-30.

Example:

2

limit
integer<int32>
default:10

Maximum number of records per page
When no value is specified, default is 10.

Example:

10

Response

OK

Attribute details

data
object[]
offset
integer<int32>
default:0

Number of records to skip before returning records. For example, offset=20, limit=10 returns records 21-30.

Example:

5

limit
integer<int32>
default:10

Maximum number of records per page

Example:

10

count
integer<int32>

Total number of records

Example:

100