REST API
The API package manages four resources: price lists, list products, customer assignments and customer-group assignments.
composer require mageb2b/pricesystem-pricelist-api:*
php bin/magento setup:upgrade
php bin/magento cache:flush
Resource routes
| Resource | Base route | Operations |
|---|---|---|
| Price lists | /V1/pricesystem/pricelist |
Get, search, create, update and delete |
| List products | /V1/pricesystem/pricelistproduct |
Get, search, create, update and delete |
| Customer assignments | /V1/pricesystem/pricelistcustomer |
Get, search, create, update and delete |
| Group assignments | /V1/pricesystem/pricelistgroup |
Get, search, create, update and delete |
Single-record reads, updates and deletes append /:id. Search routes append /search and accept Magento searchCriteria parameters.
Bulk list creation uses POST /V1/pricesystem/pricelistbulk. Product rows support bulk create and bulk update through /V1/pricesystem/pricelistproductbulk. Customer assignments can also be removed by customer ID through /V1/pricesystem/pricelistcustomer/deleteByCustomerId/:customerId.
Embedded assignments
A price-list save payload can embed products, customers and groups directly instead of posting each relation through its own resource. The save response reports rejected identifiers in invalid_product_ids, invalid_customer_ids and invalid_group_ids, so read those fields even when the request itself succeeds.
Product identifiers in API payloads are resolved strictly through the configured API product attribute (pricesystem/api/product_attribute, active when pricesystem/api/use_custom_api_fields is enabled) — there is no implicit entity_id fallback. Submit the identifier type the store is configured for; unresolved identifiers are rejected with a validation error.
DELETE /V1/pricesystem/pricelist/all removes all price lists. It exists for migration and reset scenarios — protect the MageB2B_PricesystemPricelist delete ACL accordingly and never call it as a cleanup shortcut.
Create a Magento integration with only the required Price List ACL resources. For synchronization jobs, process each bulk response and log rejected records. An HTTP success does not prove that every submitted item passed validation.
Calculated price endpoints belong to Pricesystem REST. The routes above maintain Price List data.