- Consolidated and renamed endpoints for better experience and consistency
- Moved some endpoints to the part of the API where they make more sense
- Added the use of PATCH (update resource) and PUT (replace resource) methods
- Corrected some field names that reflected legacy usage
- Shifted more from header parameters to query parameters
- New version of /orders endpoint with expanded functionality for storing, updating and segmenting on order data
The API versioning model
Orders
The new /orders endpoints offer functionality to trigger an automation to send order communication (email or SMS) and also expanded functionality to store and update the order data which makes it possible to segment on order data. The v2 endpoint /orders only supports triggering an automation and will therefore be deprecated, however it may still be used as long as the v2 status is Active LTS. The integration pattern for /orders is changed to asynchronous, meaning you will be able to store data to be acted on independantly from the order data.Using the new /orders endpoint
How to trigger order communication
Contacts
Changes to the /contacts endpoints were done for better experience and consistency, moving some to other groups or changing the terminology for clarification of its function. The names of the /contacts//bonuschecks endpoints (four of them) changed to /reward-vouchers and some parameters and payload values have changed. See the “Reward vouchers (bonus checks)” section below. Endpoint /contacts//bykey/ removed in v3. The same functionality is available from the /contacts//bykey endpoint. Endpoint /contacts/count removed in v3 (but is still available in v2). Endpoint /contacts//count removed (but is still available in v2). Endpoint /contacts//bonuspointtransactions removed in v3. Now point transactions for contacts are fetched by first getting point account ID using /point-accounts and then using this ID in /point-transactions to get the actual point transactions. The header parameters when creating a contact with /contacts are now query parameters. The header parameters when deleting a contact with /contacts are now also query parameters. Method when updating contact with /contacts/ changed from POST to PATCH. The endpoint /contacts//transactions changed to its own resource /transactions and the contactId is now sent in the query string. More article data is returned in the response in v3.Contact overview
Changes made to the payload for /contactoverview. The property “bonusPoints” changes name to “points” and “checkNumber” changes to “voucherNumber”. In v3 a contact’s total points (bonus points) are no longer returned from /contactoverview. This must now be done with a separate GET request to the already existing (but slightly changed) endpoint /point-accounts.Promote to member
Endpoint /contacts//promoteToMember is removed. Logic now handled by /contacts//updateContactType.Preferences
The individual endpoints used to update preferences were consolidated to the contact update. Endpoints /contacts//preferences/acceptsEmail, /contacts//preferences/acceptsPostal and /contacts//preferences/acceptsSms removed in v3. Logic now handled by the update endpoint /contacts/.Posoffers
The /posoffers endpoints are obsolete and will be deprecated. Promotions should now be handled by the /promotions endpoint. Endpoint /contacts//posoffers/all removed in v3. Endpoint /contacts//posoffers//redeem removed in v3. Endpoint /contacts//posoffers/available removed in v3. Endpoint /contacts//bykey//posoffers//redeem removed in v3. Endpoint /contacts//bykey//posoffers/all removed in v3. Endpoint /contacts//bykey//posoffers/available removed in v3. Endpoint /contacts/bykey//posoffers//redeem removed in v3. Endpoint /contacts/bykey//posoffers/all removed in v3. Endpoint /contacts/bykey//posoffers/available removed in v3.Promotions
Changes were made to the /promotions endpoints; Endpoint contacts//promotions removed. To fetch a contact’s promotions you can now use /api/v3/promotion-assignments. Endpoint /contacts//promotions//redeem removed in v3. For the same functionality use /api/v3/promotions/codes//redeem. Endpoint /contacts//promotions//assign removed and functionality replaced by /api/v3/promotion-assignments.Points
Changes were made to the /point-accounts section to clarify usage and consolidate endpoints. Parameters sent to /point-accounts in order to get a contact’s points have changed. Note that, because of the changes to /contactoverview, the /point-accounts endpoint is now the only way to fetch a contact’s points.The Points API
Reward vouchers (bonus checks)
Endpoint /promotions/reward-vouchers//reactivate becomes /reward-vouchers//reactivate. Endpoint /contacts//bonuschecks//redeem becomes /reward-vouchers//redeem. Endpoint /contacts//bonuschecks changed to /reward-vouchers. Endpoint /contacts//bonuschecks/available becomes /reward-vouchers/available. Endpoint /contacts//bonuschecks/redeemed becomes /reward-vouchers/redeemed. The attribute usedBonusChecks is replaced by usedRewardVouchers. The attribute checkNumber is replaced by voucherNumber.Tracking and inventory
Changes were made to the tracking and inventory sections to supports multiple items in a single request. Endpoint /tracking/carts/batch removed. Endpoint /tracking/carts enhanced to /tracking/carts and can accept multiple items. Endpoint /tracking/productviews removed. Endpoint /tracking/productview enhanced to /tracking/productview and can accept multiple item. Endpoint inventory/stock-levels/batch removed. Batch functionality now handled by enhanced version of /inventory/stock-levels.Transactions / Receipts
Endpoint /transactions used to import receipts is deprecated. In v3 use /receipts instead. The attribute usedBonusChecks is replaced by usedRewardVouchers. The attribute checkNumber is replaced by voucherNumber.Messages
Changes were made to how historical email, SMS and postal messages are fetched for a contact. The single endpoint /api/v2/contacts//messages/latest is replaced by three endpoints:- /api/v3/contacts//emailmessages
- /api/v3/contacts//smsmessages
- /api/v3/contacts//postalmessages