{ "opencollection": "1.0.0", "info": { "name": "Magento REST Authentication Products API", "version": "2.4" }, "request": { "auth": { "type": "bearer", "token": "{{bearerToken}}" } }, "items": [ { "info": { "name": "Products", "type": "folder" }, "items": [ { "info": { "name": "List products", "type": "http" }, "http": { "method": "GET", "url": "https://{store_domain}/rest/{store_code}/V1/products", "params": [ { "name": "searchCriteria[filter_groups][0][filters][0][field]", "value": "", "type": "query", "description": "Field name to filter on. Multiple filter groups and filters can be specified using indexed array notation. Filters within a group are OR'd; filter groups themselves are AND'd." }, { "name": "searchCriteria[sortOrders][0][field]", "value": "", "type": "query", "description": "Field name to sort results by. Direction is set in the corresponding direction parameter." }, { "name": "searchCriteria[pageSize]", "value": "", "type": "query", "description": "Number of records to return per page. Default varies by resource." }, { "name": "searchCriteria[currentPage]", "value": "", "type": "query", "description": "Page number to return. First page is 1." } ] }, "docs": "Returns a paginated list of products matching the provided search criteria. Supports filtering by any product attribute, sorting by multiple fields, and pagination using currentPage and pageSize parameters within the searchCriteria object. Returns both product data and total count for pagination." }, { "info": { "name": "Create a product", "type": "http" }, "http": { "method": "POST", "url": "https://{store_domain}/rest/{store_code}/V1/products", "body": { "type": "json", "data": "{}" } }, "docs": "Creates a new catalog product. The product type is determined by the type_id field in the request body. Supported types include simple, configurable, virtual, downloadable, bundle, and grouped. Custom attributes can be included in the custom_attributes array using attribute codes defined in the catalog." }, { "info": { "name": "Get product by SKU", "type": "http" }, "http": { "method": "GET", "url": "https://{store_domain}/rest/{store_code}/V1/products/:sku", "params": [ { "name": "sku", "value": "", "type": "path", "description": "The product SKU (Stock Keeping Unit) identifier. URL-encode special characters." } ] }, "docs": "Retrieves a single product by its SKU identifier. Returns the full product object including all attributes, media gallery entries, tier prices, and extension attributes. SKUs containing forward slashes or other special characters must be URL-encoded." }, { "info": { "name": "Update a product", "type": "http" }, "http": { "method": "PUT", "url": "https://{store_domain}/rest/{store_code}/V1/products/:sku", "params": [ { "name": "sku", "value": "", "type": "path", "description": "The product SKU (Stock Keeping Unit) identifier. URL-encode special characters." } ], "body": { "type": "json", "data": "{}" } }, "docs": "Updates an existing product identified by its SKU. Only the fields included in the request body are updated; omitted fields retain their existing values. Custom attributes included in the custom_attributes array will overwrite existing attribute values." }, { "info": { "name": "Delete a product", "type": "http" }, "http": { "method": "DELETE", "url": "https://{store_domain}/rest/{store_code}/V1/products/:sku", "params": [ { "name": "sku", "value": "", "type": "path", "description": "The product SKU (Stock Keeping Unit) identifier. URL-encode special characters." } ] }, "docs": "Permanently deletes a product from the catalog by its SKU. This operation cannot be undone. Associated product attributes, media, and tier prices are also removed. Products assigned to categories will be unassigned prior to deletion." } ] } ], "bundled": true }