Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

Personalization is an advanced feature and it is not enabled by default for every platform. Are you interested in? Would you like your newsletter provides contents keeping data from an external data source including conditional logic and loops? Please, contact MailUp API team for further information.

The personalization engine allows to provide newsletters contents using Liquid template. If you can provide recipient-related JSON data via a web service, you could use this feature to personalize your newsletter. When MailUp will send your newsletter, it will call your web service and retrieve the personalized information per recipient. To reach a specified recipient the personalization engine will create an url that contains recipent-related data that you'll define creating a personalization endpoint configuration. So, let's create your first personalization endpoint!

This page provides you information about how to manage pensonalization's endpoints.

On this page:

Get list of endpoints

DescriptionRetrieve the list of personalization endpoints configurations

HTTP Method

GET
URL
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/Personalization/Endpoints
JSON request (example)none
JSON response (example)
 Click here to expand...
{
    "IsPaginated": true,
    "Items": [
        {
            "CreationDate": "2017-12-04 16:51:34Z",
            "IdEndpoint": 25,
            "Label": "pippo",
            "Url": "http://pippo.pluto/"
        },
		...
        {
            "CreationDate": "2017-12-01 11:20:19Z",
            "IdEndpoint": 11,
            "Label": "My personalization",
            "Url": "https://www.mailup.com/personalization"
        }
    ],
    "PageNumber": 0,
    "PageSize": 20,
    "Skipped": 0,
    "TotalElementsCount": 11
}
Paging and filtering (example)

5 items per page, get first page (count starts from zero)

Retrieve an orderd list of the endpoint(s) using the clause orderby="idEndpoint desc". Parameter names can be retreived from the response body. Please note that filter matching is case sensitive.

NB: no filtering querystring parameter provided!

Get endpoint details by id

DescriptionRetrieve the personalization endpoint configuration details

HTTP Method

GET
URL
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/ConsolePersonalization/Endpoints/{id_endpoint}
JSON request (example)none
JSON response (example)
 Click here to expand...
{
    "CreationDate": "2017-12-01 11:20:19Z",
    "IdEndpoint": 11,
    "Label": "My personalization",
    "Url": "https://www.mailup.com/personalization",
    "Credentials": {
        "Password": "****",
        "Username": "test"
    },
    "Headers": [],
    "Parameters": [
        {
            "Field": "[field1]",
            "FieldTestValue": "Giancarlo",
            "Name": "name"
        }
    ],
    "Recipient": {
        "Field": "[email]",
        "FieldTestValue": "test@example.com"
    },
    "UpdateDate": "2017-12-01 11:25:37Z"
}
Paging and filtering (example)none

Create an endpoint

 What to know before start creating endpoints...
Does your service need a Basic authentication?Provide Username and Password using Credentials field.
Does your service need specific headers?Provide key-value data using Headers field.
Does your service get the recipient using email or mobile number from the url?

You can use Recipient field, providing one of theses placeholders:

  • [email]
  • [mobilenumber]
  • [fieldX] where X represent the dynamic content field unique identifier
Does your service get the recipient using data from the querystring?

You can use Parameters field, providing one of these placeholders:

  • [email]
  • [mobilenumber]
  • [idconsole]
  • [idlist]
  • [idnl]
  • [fieldX] where X represent the dynamic content field unique identifier
DescriptionCreate a personalization endpoint configuration

HTTP Method

POST
URL
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/ConsolePersonalization/Endpoints
JSON request (example)
 How to create an endpoint...
Request body
{
	"Label":"Test",
	"Url": "https://www.mailup.com/personalization"
}
HTTP Request:
 GET https://www.mailup.com/personalization
 How to create an endpoint with credentials...
Request body:
{
	"Label":"Test",
	"Url": "https://www.mailup.com/personalization",
	"Credentials": {
		"Username": "test",
		"Password": "test"
	}
}
HTTP Request:
GET https://www.mailup.com/personalization
Authentication: Basic dGVzdDp0ZXN0
 How to create an endpoint with recipient definition...
Recipient's email definition request body:
 {
	"Label":"Test",
	"Url": "https://www.mailup.com/personalization",
	"Credentials": {
		"Username": "test",
		"Password": "test"
	},
	"Recipient": {
		"Field":"[email]",
		"FieldTestValue":"test@example.com"
	}
}
HTTP Request:
GET https://www.mailup.com/personalization/[email]
Authentication: Basic dGVzdDp0ZXN0
Recipient's phone number definition request body:
{
	"Label":"Test",
	"Url": "https://www.mailup.com/personalization",
	"Credentials": {
		"Username": "test",
		"Password": "test"
	},
	"Recipient": {
		"Field":"[mobilenumber]",
		"FieldTestValue":"1234567890"
	}
}
HTTP Request:
GET https://www.mailup.com/personalization/[mobilenumber]
Authentication: Basic dGVzdDp0ZXN0
 How to create an endpoint with headers...
Request body:
{
	"Label":"Test",
	"Url": "https://www.mailup.com/personalization",
	"Credentials": {
		"Username": "test",
		"Password": "test"
	},
	"Recipient": {
		"Field":"[email]",
		"FieldTestValue":"test@example.com"
	},
	"Headers": [{
		"Key": "From",
		"Value": "personalization@example.com"
	}]
}
HTTP Request:
GET https://www.mailup.com/personalization/[email]
Authentication: Basic dGVzdDp0ZXN0
From: personalization@example.com
 How to create an endpoint with querystring parameters...
Request body:
 {
	"Label":"Test",
	"Url": "https://www.mailup.com/personalization",
	"Credentials": {
		"Username": "test",
		"Password": "test"
	},
	"Recipient": {
		"Field":"[email]",
		"FieldTestValue":"test@example.com"
	},
	"Headers": [{
		"Key": "From",
		"Value": "personalization@example.com"
	}],
	"Parameters": [{
		"Name": "idconsole",
		"Field": "[idconsole]",
		"FieldTestValue": "1234"
	},{
		"Name": "const",
		"Field": "1234",
		"FieldTestValue": "1234"
	}]
}
HTTP Request:
GET https://www.mailup.com/personalization/[email]?idconsole=[idconsole]&const=1234
Authentication: Basic dGVzdDp0ZXN0
From: personalization@example.com
JSON response (example)
 Click here to expand...
{
    "CreationDate": "2017-12-03 11:20:19Z",
    "IdEndpoint": 12,
    "Label": "My personalization",
    "Url": "https://www.mailup.com/personalization",
    "Credentials": {
        "Password": "",
        "Username": ""
    },
    "Headers": [],
    "Parameters": [
        {
            "Name":"IdNl",
			"Field":"[idnl]",
			"FieldTestValue":"123"
        }
    ],
    "Recipient": {
        "Field":"[email]",
		"FieldTestValue": "test@example.com"
    },
    "UpdateDate": "2017-12-03 11:25:37Z"
}
Paging and filtering (example)none

Update an endpoint

DescriptionUpdate a personalization endpoint configuration

HTTP Method

PUT
URL
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/ConsolePersonalization/Endpoints
JSON request (example)
 Click here to expand...
{
	"Label":"Test",
	"Url": "https://www.mailup.com/personalization",
	"Recipient": {
		"Field":"[email]",
		"FieldTestValue": "test@example.com"
	},
	"Parameters": [{
		"Name":"IdNl",
		"Field":"[idnl]",
		"FieldTestValue":"123"
	}, {
		"Name":"IdConsole",
		"Field":"[idconsole]",
		"FieldTestValue":"987"
	}],
	"Headers": [{
		"Key": "From",
		"Value": "marketing@example.com"
	}],
	"Credentials": {
        "Password": "test",
        "Username": "test"
    },
    "UpdateDate": "2017-12-03 11:25:37Z"
}
JSON response (example)
 Click here to expand...
{
	"CreationDate": "2017-12-03 11:20:19Z",
    "IdEndpoint": 12,
	"Label":"Test",
	"Url": "https://www.mailup.com/personalization",
	"Recipient": {
		"Field":"[email]",
		"FieldTestValue": "test@example.com"
	},
	"Parameters": [{
		"Name":"IdNl",
		"Field":"[idnl]",
		"FieldTestValue":"123"
	}, {
		"Name":"IdConsole",
		"Field":"[idconsole]",
		"FieldTestValue":"987"
	}],
	"Headers": [{
		"Key": "From",
		"Value": "marketing@example.com"
	}],
	"Credentials": {
        "Password": "test",
        "Username": "test"
    },
    "UpdateDate": "2017-12-04 17:15:20Z"
}
Paging and filtering (example)none

Get endpoints of a list

DescriptionGet personalization endpoints related to a list

HTTP Method

GET
URL
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/ConsolePersonalization/Endpoints/List/{id_list}
JSON request (example)

none

JSON response (example)
 Click here to expand...
[
    {
        "CreationDate": "2017-12-04 11:58:39Z",
        "IdEndpoint": 23,
        "Label": "Test",
        "Url": "https://www.mailup.com/personalization"
    }
]
Paging and filtering (example)none

Set endpoint to list

DescriptionSet a personalization endpoint to a list

HTTP Method

POST
URL
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/ConsolePersonalization/Endpoints/{id_endpoint}/List/{id_list}
JSON request (example)

none

JSON response (example)

none

Paging and filtering (example)none

Remove endpoint from list

DescriptionRemove a personalization endpoint reference from a list

HTTP Method

DELETE
URL
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/ConsolePersonalization/Endpoints/{id_endpoint}/List/{id_list}
JSON request (example)

none

JSON response (example)

none

Paging and filtering (example)none

Delete an endpoint

DescriptionRemove a personalization endpoint configuration

HTTP Method

DELETE
URL
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/ConsolePersonalization/Endpoints/{id_endpoint}
JSON request (example)

none

JSON response (example)

none

Paging and filtering (example)none
  • No labels