Skip to main content

List With Pagination

GET /v2/product

The endpoint retrieves a list of products in the form of a JSON array. Each product object includes various properties such as id, group_id, tenant, name, status, sales_channel, subscription_term, payment_period, subscription, referenced, amount, products, services, managementLink, keys, media, country, currency, type, description, integration, resell, msp, permission_features, vendor, customInputs, integrations, created, updated, __v, consumption, serviceList, and parent.

Here is a JSON schema representing the structure of the response:

{
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {"type": "string"},
"group_id": {"type": "string"},
"tenant": {"type": "string"},
"name": {"type": "string"},
"status": {
"type": "object",
"properties": {
"active": {"type": "boolean"},
"deleted": {"type": "boolean"}
}
},
"sales_channel": {"type": "string"},
"subscription_term": {"type": "number"},
"payment_period": {"type": "number"},
"subscription": {"type": "boolean"},
"referenced": {"type": "boolean"},
"amount": {
"type": "object",
"properties": {
"min": {"type": "number"},
"max": {"type": "number"},
"default": {"type": "number"}
}
},
"products": {
"type": "array",
"items": {
"type": "object",
"properties": {
"_id": {"type": "string"},
"sku": {"type": "string"},
"cost_price": {"type": "number"},
"price": {"type": "number"},
"amount": {
"type": "object",
"properties": {
"default": {"type": "number"},
"min": {"type": "number"},
"max": {"type": "number"}
}
}
}
}
},
"services": {
"type": "array",
"items": {"type": "string"}
},
"managementLink": {
"type": "object",
"properties": {
"title": {"type": "string"},
"url": {"type": "string"}
}
},
"keys": {"type": "array"},
"media": {"type": "array"},
"country": {
"type": "object",
"properties": {
"code": {"type": "string"},
"_id": {"type": "string"},
"id": {"type": "string"}
}
},
"currency": {
"type": "object",
"properties": {
"code": {"type": "string"},
"_id": {"type": "string"},
"id": {"type": "string"}
}
},
"type": {"type": "number"},
"description": {"type": "string"},
"integration": {"type": "array"},
"resell": {"type": "boolean"},
"msp": {"type": "boolean"},
"permission_features": {
"type": "array",
"items": {
"type": "object",
"properties": {
"namespace": {"type": "string"}
}
}
},
"vendor": {
"type": "object",
"properties": {
"name": {"type": "string"}
}
},
"customInputs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"title": {"type": "string"},
"type": {"type": "string"},
"name": {"type": "string"},
"required": {"type": "boolean"},
"_id": {"type": "string"},
"id": {"type": "string"}
}
}
},
"integrations": {"type": "array"},
"created": {"type": "string"},
"updated": {"type": "string"},
"__v": {"type": "number"},
"consumption": {
"type": "object",
"properties": {
"metadata": {"type": "object"}
}
},
"serviceList": {"type": "array"},
"parent": {"type": "null"}
}
}
}

Query Parameters

  • populate[] - Parameter for populate[]
  • filter[distributor_mode] - Parameter for filter[distributor_mode]
  • extended[] - Parameter for extended[]
  • perPage - Parameter for perPage
  • version - Parameter for version
  • ~filter[services] - Parameter for ~filter[services]
  • ~filter[group_id] - Parameter for ~filter[group_id]
  • ~fields - Parameter for ~fields
  • ~search - Parameter for ~search

Request Example

GET /v2/product?populate[]=serviceList:name&populate[]=categories&populate[]=distributor&populate[]=productCollections&filter[distributor_mode]=false&extended[]=cost&perPage=10&version=v2

Headers

  • Accept - Expected response format (Example: application/json)