# Get all products Retrieves a list of all products. Supports pagination and filtering by companyId. Endpoint: GET /v1/api/products Version: 1.2.4 Security: X-Api-Key ## Query parameters: - `skip` (number) Number of records to skip (must be a multiple of limit for accurate page numbers) - `limit` (number) Maximum number of records to return ## Response 200 fields (application/json): - `id` (string) Unique identifier for the Product. Example: "o1p2q3r4s5t6u7v8w9x0y1z2" - `createdAt` (string) Timestamp when the Product was created. Example: "2025-12-07T19:31:48.436+00:00" - `updatedAt` (string) Timestamp when the Product was last updated. Example: "2025-12-07T19:35:48.436+00:00" - `companyId` (string) Company ID associated with the Product. Example: "o1p2q3r4s5t6u7v8w9x0y1z2" - `name` (string) Name of the product. Example: "Sweet Tea" - `productType` (string) Type of the product. Example: "Beverages" - `externalId` (string) External ID of the product. Example: "1234567890" - `description` (string) Description of the product. Example: "Sweet Tea is a refreshing drink made with tea and sugar." - `shortDescription` (string) Short description of the product. Example: "Sweet Tea is a drink with sugar." - `sku` (string) SKU of the product. Example: "1234567890" - `fromFinal` (boolean) Flag to indicate if the Product is created from Oliver. - `images` (array) Images of the product. Example: ["https://example.com/image1.jpg","https://example.com/image2.jpg"] - `tags` (array) Tags of the product. Example: ["sweet","tea","refreshing"] - `status` (string) Status of the product. Example: "draft" - `source` (string) Source of the product. Example: "woo-commerce" - `minPrice` (number) Min price of the product. Example: 100 - `maxPrice` (number) Max price of the product. Example: 200 - `supplier` (string) Supplier of the product. Example: "Supplier 1" - `taxTable` (string) Tax table of the product. Example: "o1p2q3r4s5t6u7v8w9x0y1z2" - `categories` (array) Categories of the product. Example: ["o1p2q3r4s5t6u7v8w9x0y1z2","o1p2q3r4s5t6u7v8w9x0y1z3"] - `outlets` (array) Outlets of the product. Example: ["o1p2q3r4s5t6u7v8w9x0y1z2","o1p2q3r4s5t6u7v8w9x0y1z3"] - `metadata` (array) Metadata associated with the Product. Example: [{"key":"key1","value":"value1"},{"key":"key2","value":"value2"}] - `metadata.key` (string, required) Key of the metadata entry. Example: "key1" - `metadata.value` (string, required) Value of the metadata entry. Example: "value1" - `metadata.externalId` (string) External ID associated with the metadata entry. Example: "ext123" - `attributes` (array) Attributes associated with the Product. Example: [{"name":"color","values":["red","blue"]}] - `attributes.name` (string, required) Name of the attribute. Example: "color" - `attributes.values` (array) Values of the attribute. Example: ["red","blue"] - `attributes.value` (string) Value of the attribute. Example: "red" ## Response 400 fields (application/json): - `statusCode` (number, required) HTTP status code Example: 400 - `message` (string, required) Error message describing what went wrong Example: "Validation failed: Field `schemaField` is required." - `error` (string, required) Error type/name Enum: "Bad Request", "Unauthorized", "Forbidden", "Not Found", "Conflict", "Unprocessable Entity", "Internal Server Error" ## Response 404 fields (application/json): - `statusCode` (number, required) HTTP status code Example: 404 - `message` (string, required) Error message describing what went wrong Example: "The resource was not found." - `error` (string, required) Error type/name Enum: "Bad Request", "Unauthorized", "Forbidden", "Not Found", "Conflict", "Unprocessable Entity", "Internal Server Error"