Skip to main content

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..."
   }
]