Attribute API (1.0.0)

Download OpenAPI specification:

Attribute definitions, groups, and options.

Attribute Groups

List attribute groups

List all attribute groups with pagination

Authorizations:
BearerAuth
query Parameters
page
integer
Default: 1

Page number

page_size
integer
Default: 20

Page size

search
string

Search term for code or name

status
string

Filter by status

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Create an attribute group

Create a new attribute group

Authorizations:
BearerAuth
Request Body schema: application/json
required

Attribute group creation request

code
required
string [ 1 .. 64 ] characters
description
string <= 255 characters
name
required
string [ 1 .. 255 ] characters
sort_order
integer >= 0

Responses

Request samples

Content type
application/json
{
  • "code": "TECHNICAL",
  • "description": "Technical attribute group",
  • "name": "Technical Specifications",
  • "sort_order": 1
}

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Get an attribute group by ID

Retrieve a single attribute group by its unique identifier

Authorizations:
BearerAuth
path Parameters
id
required
string

Attribute Group ID

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Delete an attribute group

Delete an attribute group by ID

Authorizations:
BearerAuth
path Parameters
id
required
string

Attribute Group ID

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ],
  • "message": "string",
  • "success": true
}

Update an attribute group

Update an existing attribute group by ID

Authorizations:
BearerAuth
path Parameters
id
required
string

Attribute Group ID

Request Body schema: application/json
required

Attribute group update request

description
string
name
string [ 1 .. 255 ] characters
sort_order
integer >= 0

Responses

Request samples

Content type
application/json
{
  • "description": "Updated description",
  • "name": "Technical Specifications",
  • "sort_order": 1
}

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Change attribute group status

Change an attribute group's status (activate or deactivate)

Authorizations:
BearerAuth
path Parameters
id
required
string

Attribute Group ID

Request Body schema: application/json
required

Status change request

status
required
string
Enum: "active" "inactive"

Responses

Request samples

Content type
application/json
{
  • "status": "active"
}

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Attribute Group Translations

Get all translations for an attribute group

Retrieve all localized translations for a specific attribute group

Authorizations:
BearerAuth
path Parameters
id
required
string

Attribute Group ID

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Update attribute group translations

PATCH: Update multiple translations for an attribute group

Authorizations:
BearerAuth
path Parameters
id
required
string

Attribute Group ID

Request Body schema: application/json
required

Translations data

required
Array of objects (AttributeGroupTranslationInput)

Responses

Request samples

Content type
application/json
{
  • "translations": [
    ]
}

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Attributes

List attribute types

Retrieve all available attribute types

Authorizations:
BearerAuth

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "success": true
}

List attributes

List all attributes with pagination and filtering

Authorizations:
BearerAuth
query Parameters
page
integer
Default: 1

Page number

page_size
integer
Default: 20

Page size

search
string

Search term for code or name

attribute_type
string

Filter by attribute type

status
string

Filter by status

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Create an attribute

Create a new attribute

Authorizations:
BearerAuth
Request Body schema: application/json
required

Attribute creation request

attribute_group_id
string non-empty
attribute_type
required
string
Enum: "text" "text_area" "number" "price" "select" "multi_select" "measurement" "media" "media_group" "boolean" "date" "date_range" "file" "location" "link" "identifier" "tax_class"
code
required
string <= 50 characters
object
description
string <= 1000 characters
is_unique
boolean
name
required
string <= 255 characters
sort_order
integer >= 0
value_per_channel
boolean
value_per_locale
boolean

Responses

Request samples

Content type
application/json
{
  • "attribute_group_id": "5",
  • "attribute_type": "select",
  • "code": "COLOR",
  • "config": { },
  • "description": "Product color attribute",
  • "is_unique": false,
  • "name": "Color",
  • "sort_order": 1,
  • "value_per_channel": false,
  • "value_per_locale": true
}

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Get an attribute by ID

Retrieve a single attribute by its unique identifier

Authorizations:
BearerAuth
path Parameters
id
required
string

Attribute ID

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Delete an attribute

Delete an attribute by ID

Authorizations:
BearerAuth
path Parameters
id
required
string

Attribute ID

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ],
  • "message": "string",
  • "success": true
}

Update an attribute

Update an existing attribute by ID

Authorizations:
BearerAuth
path Parameters
id
required
string

Attribute ID

Request Body schema: application/json
required

Attribute update request

attribute_group_id
string non-empty
attribute_type
string
Enum: "text" "text_area" "number" "price" "select" "multi_select" "measurement" "media" "media_group" "boolean" "date" "date_range" "file" "location" "link" "identifier" "tax_class"
code
string <= 50 characters
object
description
string <= 1000 characters
is_unique
boolean
name
string <= 255 characters
sort_order
integer >= 0
value_per_channel
boolean
value_per_locale
boolean

Responses

Request samples

Content type
application/json
{
  • "attribute_group_id": "5",
  • "attribute_type": "select",
  • "code": "COLOR",
  • "config": { },
  • "description": "Updated product color",
  • "is_unique": false,
  • "name": "Color",
  • "sort_order": 1,
  • "value_per_channel": false,
  • "value_per_locale": true
}

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Change attribute status

Change an attribute's status (activate or deactivate)

Authorizations:
BearerAuth
path Parameters
id
required
string

Attribute ID

Request Body schema: application/json
required

Status change request

status
required
string
Enum: "active" "inactive"

Responses

Request samples

Content type
application/json
{
  • "status": "active"
}

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Attribute Options

List attribute options

List all attribute options for a specific attribute with pagination

Authorizations:
BearerAuth
path Parameters
attributeId
required
string

Attribute ID

query Parameters
page
integer
Default: 1

Page number

page_size
integer
Default: 20

Page size

search
string

Search term for option

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Create an attribute option

Create a new attribute option for a specific attribute

Authorizations:
BearerAuth
path Parameters
attributeId
required
string

Attribute ID

Request Body schema: application/json
required

Attribute option creation request

code
required
string
label
required
string

Responses

Request samples

Content type
application/json
{
  • "code": "#FF0000",
  • "label": "Red"
}

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Get an attribute option by ID

Retrieve a single attribute option by its unique identifier

Authorizations:
BearerAuth
path Parameters
attributeId
required
string

Attribute ID

id
required
string

Attribute Option ID

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Delete an attribute option

Delete an attribute option by ID

Authorizations:
BearerAuth
path Parameters
attributeId
required
string

Attribute ID

id
required
string

Attribute Option ID

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ],
  • "message": "string",
  • "success": true
}

Update an attribute option

Update an existing attribute option by ID

Authorizations:
BearerAuth
path Parameters
attributeId
required
string

Attribute ID

id
required
string

Attribute Option ID

Request Body schema: application/json
required

Attribute option update request

code
required
string
label
required
string

Responses

Request samples

Content type
application/json
{
  • "code": "#FF0000",
  • "label": "Red"
}

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Attribute Option Translations

Get all translations for an attribute option

Retrieve all localized translations for a specific attribute option

Authorizations:
BearerAuth
path Parameters
attributeId
required
string

Attribute ID

id
required
string

Attribute Option ID

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Update attribute option translations

PATCH: Update multiple translations for an attribute option

Authorizations:
BearerAuth
path Parameters
attributeId
required
string

Attribute ID

id
required
string

Attribute Option ID

Request Body schema: application/json
required

Translations data

required
Array of objects (AttributeOptionTranslationInput)

Responses

Request samples

Content type
application/json
{
  • "translations": [
    ]
}

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Attribute Translations

Get all translations for an attribute

Retrieve all localized translations for a specific attribute

Authorizations:
BearerAuth
path Parameters
id
required
string

Attribute ID

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Update attribute translations

PATCH: Update multiple translations for an attribute

Authorizations:
BearerAuth
path Parameters
id
required
string

Attribute ID

Request Body schema: application/json
required

Translations data

required
Array of objects (AttributeTranslationInput)

Responses

Request samples

Content type
application/json
{
  • "translations": [
    ]
}

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

UOM Families

List UOM families

List all UOM families with pagination and filtering

Authorizations:
BearerAuth
query Parameters
page
integer
Default: 1

Page number

page_size
integer
Default: 10

Page size

status
string

Filter by status

search
string

Search term for code or name

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Create a UOM family

Create a new unit of measure family with optional base UOM

Authorizations:
BearerAuth
Request Body schema: application/json
required

UOM family creation request

object (BaseUOMRequest)
code
required
string [ 1 .. 64 ] characters
description
string <= 255 characters
name
required
string [ 1 .. 255 ] characters

Responses

Request samples

Content type
application/json
{
  • "base_uom": {
    },
  • "code": "WEIGHT",
  • "description": "Weight measurement units",
  • "name": "Weight"
}

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Get a UOM family by ID

Retrieve a single UOM family by its unique identifier

Authorizations:
BearerAuth
path Parameters
id
required
string

UOM Family ID

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Delete a UOM family

Delete a UOM family by ID

Authorizations:
BearerAuth
path Parameters
id
required
string

UOM Family ID

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ],
  • "message": "string",
  • "success": true
}

Update a UOM family

Update an existing UOM family by ID

Authorizations:
BearerAuth
path Parameters
id
required
string

UOM Family ID

Request Body schema: application/json
required

UOM family update request

description
string
name
string [ 1 .. 255 ] characters

Responses

Request samples

Content type
application/json
{
  • "description": "Updated description",
  • "name": "Weight"
}

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Change UOM family status

Change a UOM family's status (activate or deactivate)

Authorizations:
BearerAuth
path Parameters
id
required
string

UOM Family ID

Request Body schema: application/json
required

Status change request

status
required
string
Enum: "active" "inactive"

Responses

Request samples

Content type
application/json
{
  • "status": "active"
}

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

UOM Family Translations

Get all translations for a UOM family

Retrieve all localized translations for a specific UOM family

Authorizations:
BearerAuth
path Parameters
id
required
string

UOM Family ID

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Update UOM family translations

PATCH: Update multiple translations for a UOM family

Authorizations:
BearerAuth
path Parameters
id
required
string

UOM Family ID

Request Body schema: application/json
required

Translations data

required
Array of objects (UOMFamilyTranslationInput)

Responses

Request samples

Content type
application/json
{
  • "translations": [
    ]
}

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

UOMs

List UOMs

List all units of measure with pagination and filtering

Authorizations:
BearerAuth
query Parameters
page
integer
Default: 1

Page number

page_size
integer
Default: 20

Page size

search
string

Search term for code or name

uom_family_id
string

Filter by UOM family ID

status
string

Filter by status

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Create a UOM

Create a new unit of measure

Authorizations:
BearerAuth
Request Body schema: application/json
required

UOM creation request

code
required
string [ 1 .. 64 ] characters
conversion_factor
required
number
conversion_offset
number
description
string <= 255 characters
is_base
boolean
name
required
string [ 1 .. 255 ] characters
symbol
required
string [ 1 .. 32 ] characters
uom_family_id
required
string

Responses

Request samples

Content type
application/json
{
  • "code": "KG",
  • "conversion_factor": 1,
  • "conversion_offset": 0,
  • "description": "Unit of mass",
  • "is_base": true,
  • "name": "Kilogram",
  • "symbol": "kg",
  • "uom_family_id": "1"
}

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Get a UOM by ID

Retrieve a single unit of measure by its unique identifier

Authorizations:
BearerAuth
path Parameters
id
required
string

UOM ID

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Delete a UOM

Delete a unit of measure by ID

Authorizations:
BearerAuth
path Parameters
id
required
string

UOM ID

Responses

Response samples

Content type
application/json
{
  • "errors": [
    ],
  • "message": "string",
  • "success": true
}

Update a UOM

Update an existing unit of measure by ID

Authorizations:
BearerAuth
path Parameters
id
required
string

UOM ID

Request Body schema: application/json
required

UOM update request

conversion_factor
number
conversion_offset
number
description
string
name
string [ 1 .. 255 ] characters
symbol
string [ 1 .. 32 ] characters

Responses

Request samples

Content type
application/json
{
  • "conversion_factor": 1,
  • "conversion_offset": 0,
  • "description": "Updated unit of mass",
  • "name": "Kilogram",
  • "symbol": "kg"
}

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Change UOM status

Change a UOM's status (activate or deactivate)

Authorizations:
BearerAuth
path Parameters
id
required
string

UOM ID

Request Body schema: application/json
required

Status change request

status
required
string
Enum: "active" "inactive"

Responses

Request samples

Content type
application/json
{
  • "status": "active"
}

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

UOM Translations

Get all translations for a UOM

Retrieve all localized translations for a specific UOM

Authorizations:
BearerAuth
path Parameters
id
required
string

UOM ID

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}

Update UOM translations

PATCH: Update multiple translations for a UOM

Authorizations:
BearerAuth
path Parameters
id
required
string

UOM ID

Request Body schema: application/json
required

Translations data

required
Array of objects (UOMTranslationInput)

Responses

Request samples

Content type
application/json
{
  • "translations": [
    ]
}

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true
}