Content from API endpoint
Engage has functionality to fetch data from external platforms in order to populate emails. Here's more detail about how that works.
The data model presented below is fixed and designed for product information but can also be used for populating emails with, for example, related products, campaign information or other types of information from external systems.
Field definitions
Even though it's possible to have any field in the API response, the ones defined below should always be included when using Engage's standard email modules for products. The images returned in the response will we displayed as-is in the outgoing emails. Hence, the format of the image (the size and aspect ratio) needs to match the format given in the mail template module to ensure they look how you want them to look
The image format should be decided together with the person responsible for your email template as well as your technical application specialist at Voyado.
Field name | Example value | Instructions |
---|---|---|
productNumber | 23874625 | |
description | Superproduct 2000 Ultra, matte black | |
discountPrice | 1 549 kr | |
imageUrl | https://www.customerdomain.com/product/1234.jpg | |
link | https://www.customerdomain.com/product/1234 | |
name | Superproduct 2000 Ultra | |
originalPrice | 1 699 kr | OriginalPrice should ONLY be used when product is on sale |
price | 1 699 kr | |
fromPrice | 899 kr | |
discountPrice | 1099 kr | |
sellText | Looking for Superproducts latest groundbreaking innovation? With the 2000 Ultra Superproduct has done it again. The 2000 Ultra offers… |
Request URL
Your custom API endpoint should be able to handle a search query with multiple product IDs that are comma separated, like in this example. Besides this requirement, the actual URL can be determined by you.
GET https://[customerdomain].com/api/endpoint/exampleID1,exampleID2,exampleID3
It is also possible to add several extra parameters to personalise the URL. The examples below use a parameter called locale which enables you to dynamically call for an endpoint connected to a specific country/language.
GET https://[customerdomain].com/api/{locale}/endpoint/
Or you could also do it this way:
GET https://[customerdomain].com/api?locale={locale}&id=exampleID1,exampleID2
Note
These extra parameters are decided per project and configured by a product specialist at Voyado.
Response JSON
This is an example of how a response should look like to match the Engage format:
[ { "productNumber": "12334", "description": "Superproduct 2000 Ultra, matte black", "imageUrl": https://customerimages.imgix.net/71303.jpg", "originalPrice": "1 699 kr", "discountPrice": "1 549 kr", "discount": "- 9 %", "link": "https://www.customerdomain.com/product/71303", "fromPrice": "1 699 kr", "name": "Superproduct 2000 Ultra", "price": "1 549 kr", "sellText": "Looking for Superproducts latest groundbreaking innovation? With the 2000 Ultra Superproduct has done it again. The 2000 Ultra offers..." }, { "productNumber": "12335" "description": "Superproduct 2003 Ultra, matte white", "imageUrl": "https://customerimages.imgix.net/product/71304.jpg", "originalPrice": "1 699 kr", "discountPrice": "1 549 kr", "discount": "- 9 %", "link": "https://www.customerdomain.com/product/71304", "fromPrice": "1 699 kr", "name": "Superproduct 2000 Ultra", "price": "1 549 kr", "sellText": "Looking for Superproducts latest groundbreaking innovation? With the 2000 Ultra Superproduct has done it again. The 2000 Ultra offers..." } ]