Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This page provides you with information about how to use MailUp REST API to create email messages and to send them to specified recipients.

Panel
titleReference Links



On this page:

Table of Contents
 


...

Email messages

An email message is always created inside the environment of a MailUp list, so it cannot be managed outside of that list.

Please note that, when creating a new email message, any referenced tag or attachment must be created in advance for that list. 

Create a message

...

Note

...

 

...

HTTP Method

...

POST

...

URL

...

titleImportant about creating a new message
  1. any referenced tag or attachment must be created in advance for that list
  2. to enable the use of dynamic fields, which are disabled by default, choose one of these options:
    1. specify at least one default value in the "Fields" parameter (as in the sample request below);
    2. use the EnableDynamicFields method;
    3. use the request property UseDynamicField: true


Description

Create a new email message

HTTP Method

POST

URL


Code Block
titleCreate a message
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Email


JSON request (example)


Expand

 

JSON response (example)

 

 

Paging and filtering (example)

 

 

List Messages

Description 

HTTP Method

GET

URL

Retreive all email messages of that list

Code Block
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Emails

 

Retreive only email messages that have been published (i.e. with public visibility, see details)

Code Block
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Online/Emails

JSON request (example)

none

JSON response (example)

Expand
Code Block
{"IsPaginated":false,"Items":[{"Subject":"test","idList":2,"idMessage":29},{"Subject":"Explore the new feature of List Plus","idList":2,"idMessage":28},{"Subject":"Testing List Plus","idList":2,"idMessage":27},{"Subject":"Triggered news from MailUp Blog","idList":2,"idMessage":8}],"PageNumber":0,"PageSize":20,"Skipped":0,"TotalElementsCount":4}

 

 

Paging and filtering (example)

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

  • https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/2/Emails?PageNumber=0&PageSize=2

Retreive messages that contain the word "test" in the subject field and order by ID. Note: search by text is case sensitive

  • https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/2/Emails?filterby="Subject.Contains(%27test%27)"&orderby="idMessage+asc"

Read message details

Description 

HTTP Method

GET

URL

Retrieve the email details by specified id

Code Block
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Email/{id_Message}

 

Get attachment list for the specified message id

Code Block
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Email/{id_Message}/Attachment

JSON request (example)

none

JSON response (example)

Expand
Code Block
{"Subject":"Monthly Newsletter","idList":2,"idMessage":24,"Content":"
<table><tbody><tr><td><strong>Image</strong>&nbsp;</td><td><strong>Text</strong>&nbsp;</td></tr><tr><td style="width: 200px; height: 70px;">&nbsp;<img src="http://d0i4f.s57.it/images/2/ListImages/sociallogin.PNG" alt="This text is visible if you do not see images" title="SocialLogin" longdesc="Social Login Image" width="200" height="70"></td><td>&nbsp;This screenshot shows you how to perform login with social networks<br>&nbsp;(see <a href="http://[track]/https://help.mailup.com" target="_blank" id="User" s="" manual'="">manual</a>)&nbsp;</td></tr></tbody></table>
","Embed":false,"Fields":[{"Description":"FirstName","Id":1,"Value":""},{"Description":"LastName","Id":2,"Value":""},{"Description":"Company","Id":3,"Value":""},{"Description":"City","Id":4,"Value":""},{"Description":"Province","Id":5,"Value":""},{"Description":"ZIP","Id":6,"Value":""},{"Description":"State","Id":7,"Value":""},{"Description":"Region","Id":8,"Value":""},{"Description":"Address","Id":9,"Value":""},{"Description":"Gender ","Id":10,"Value":""},{"Description":"phone","Id":11,"Value":""},{"Description":"CustomerID","Id":12,"Value":""},{"Description":"LatestOrderID","Id":13,"Value":""},{"Description":"LatestOrderDate","Id":14,"Value":""},{"Description":"LatestOrderAmount","Id":15,"Value":""},{"Description":"LatestOrderProductIDs","Id":16,"Value":""},{"Description":"LatestOrderCategoryIDs","Id":17,"Value":""},{"Description":"LatestShippedOrderDate","Id":18,"Value":""},{"Description":"LatestShippedOrderID","Id":19,"Value":""},{"Description":"LatestAbandonedCartDate","Id":20,"Value":""},{"Description":"LatestAbandonedCartTotal","Id":21,"Value":""},{"Description":"LatestAbandonedCartID","Id":22,"Value":""},{"Description":"TotalOrdered","Id":23,"Value":""},{"Description":"TotalOrderedLast12m","Id":24,"Value":""},{"Description":"TotalOrderedLast30d","Id":25,"Value":""},{"Description":"AllOrderedProductIDs","Id":26,"Value":""},{"Description":"WantsBlogUpdate","Id":27,"Value":""}],"IsConfirmation":false,"Notes":"Issue n. 5 May 2014","Tags":[{"Enabled":false,"Id":5,"Name":"news"},{"Enabled":false,"Id":4,"Name":"users-manual"}],"TrackingInfo":{"CustomParams":"","Enabled":true,"Protocols":["http:","https:","ftp:","news:"]},"Attachments":[{"Name":"24\/jp.txt","Path":"http:\/\/d0i4f.s57.it\\d0i4f\\download\\24\\24\/jp.txt","Slot":1}]}

 

 

titleEnable dynamic fields defining at least one of them: click here to expand...


Code Block
{
	"Subject":"Monthly Newsletter 4",
	"Content":"Hello world",
	"Embed":false,
	"Fields":[
		{
			"Description":"Country",
			"Id":8,
			"Value":"USA"
		}
	],
	"IsConfirmation":false,
	"Notes":"Issue n. 5",
	"Tags":null,
	"TrackingInfo": {
		"CustomParams":"",
		"Enabled":true,
		"Protocols":["http:","https:","ftp:","news:"]
	}
}



Expand
titleEnable dynamic fields using UseDynamicFields field: click here to expand...


Code Block
{
	"Subject": "Monthly Newsletter 4",
	"IsConfirmation": false,
	"Content": "nothing here",
	"Notes": "notes",
	"UseDynamicField": true,
	"Embed": false,
	"PreHeader": "",
	"TrackingInfo":
	{
		"CustomParams": "",
		"Enabled": false,
		"Protocols": []
	}
}



Expand
titleLeave dynamic fields disabled: click here to expand...


Code Block
{
	"Subject": "Monthly Newsletter 4",
	"IsConfirmation": false,
	"Content": "nothing here",
	"Notes": "notes",
	"UseDynamicField": false,
	"Embed": false,
	"PreHeader": "",
	"TrackingInfo":
	{
		"CustomParams": "",
		"Enabled": false,
		"Protocols": []
	}
}



JSON response (example)


Code Block
{  "CreationDate": "2016-09-16 15:57:35Z", "Notes": "", "Subject": "Monthly Newsletter 4",  "idList": 2, "idMessage": 1060 }



Paging and filtering (example)



Enable Dynamic fields

Description

Enable or disable dynamic fields

HTTP Method

PUT

URL


Code Block
titleCreate a message
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/list/{id_List}/Email/{id_Message}/EnableDynamicFields/{enable}


JSON request (example)


Code Block
titleEnable or Disable
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/list/{id_List}/Email/{id_Message}/EnableDynamicFields/true
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/list/{id_List}/Email/{id_Message}/EnableDynamicFields/false



JSON response (example)

Message details are returned



Paging and filtering (example)




List Messages

DescriptionRetrieve email messages of a specified list

HTTP Method

GET

URL

Retrieve all email messages of that list

Code Block
GET https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Emails


Retrieve only email messages that have been published (i.e. with public visibility, see details) 1

Code Block
GET https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Online/Emails


Retrieve only email messages that have been archived (see details) 1

Code Block
GET https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Archived/Emails


Note:

1 an empty list is returned if public visibility of messages (aka Web library) is disabled. You shall enable it to Retrieve them

JSON request (example)

none

JSON response (example)

All email messages of a specified list

Expand


Code Block
{
	"IsPaginated":false,
	"Items":[
		{
			"CreationDate": "2017-05-29 08:21:59Z",
      		"Notes": "Issue n. 5",
      		"Subject": "Monthly Newsletter 4",
      		"idList": 1,
	        "idMessage": 38,
	        "ServiceType": 0
		},
		{
     	 	"CreationDate": "2017-05-24 13:05:08Z",
      		"Notes": "notes",
      		"Subject": "La prova",
      		"idList": 1,
      		"idMessage": 37,
      		"ServiceType": 0
    	}
	],
	"PageNumber":0,
	"PageSize":20,
	"Skipped":0,
	"TotalElementsCount":2
}



Expand
titleAbout ServiceType field...

ServiceType field shows the message types. Here are the most common values:

ValueDescription
0Newsletter
1SMTP+

P.S.: the ServiceType field has a value greater than 1 when your platform has a custom configuration. Please contact us, if you need more information.


List published messages (public URLs are also provided)

Expand

"LastSendDate":"0001-01-01 00:00:00Z" is returned when message has never been sent

Code Block
{
	"IsPaginated":false,
	"Items":[
		{
			"Subject":"Monthly Newsletter 4",
			"idList":2,
			"idMessage":62,
			"CreationDate":"2014-05-21 12:14:41Z",
			"LastSendDate":"0001-01-01 00:00:00Z",
			"Notes":"Issue n. 5",
			"Url":"http:\/\/d0i4e.s57.it\/frontend\/nl_preview_window.aspx?idNL=62"
		}
	],
	"PageNumber":0,
	"PageSize":20,
	"Skipped":0,
	"TotalElementsCount":1
}



List archived messages

Expand


Code Block
{
	"IsPaginated":false,
	"Items":[
		{
			"Subject":"Annual Newsletter n.13",
			"idList":2,
			"idMessage":27,
			"CreationDate":"2014-05-22 09:37:56Z",
			"LastSendDate":"",
			"Notes":"Issue n. 10 June 2014",
			"Url":"http:\/\/d0i4f.s57.it\/frontend\/nl_preview_window.aspx?idNL=27"
		},
		{
			"Subject":"Annual Newsletter n.4",
			"idList":2,
			"idMessage":26,
			"CreationDate":"2014-05-22 08:55:15Z",
			"LastSendDate":"",
			"Notes":"Issue n. 6 June 2014",
			"Url":"http:\/\/d0i4f.s57.it\/frontend\/nl_preview_window.aspx?idNL=26"
		}
	],
	"PageNumber":0,
	"PageSize":20,
	"Skipped":0,
	"TotalElementsCount":2
}



Paging and filtering (example)

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

  • https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/2/Emails?PageNumber=0&PageSize=2
Retreive

Retrieve messages that contain the word "test" in the subject field and order by ID. Note: search by text is case sensitive:

  • https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/2/Emails?filterby="Subject.Contains(%27test%27)"&orderby="idMessage+asc"

Update message

Retrieve all subscribed/unsubscribed/pending recipients from a list

For each MailUp list and for each channel, these are the available subscription conditions:

  • subscribed 
  • unsubscribed
  • pending
  • not subscribed (has one of the status listed above at least in another list of that account)

"Unsubscribed" and "pending" conditions apply only to lists, not to groups. 

Read subscribed recipients on Email channel

Description

Retreive subscribers of specified list

HTTP Method

GET

URL

code

Retrieve only the messages with tags whose IDs are 1, 13, or 45 (at least one of them):

  • https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/2/Emails?tags="1,13,45"

Retrieve only the messages with tags whose ID is 13 or names are customers, welcome message or hello, world (at least one of them):

  • https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/
{ID_LIST}/Recipients/Subscribed

JSON request (example)

none

JSON response (example)

Expand Code Block
languagehtml/xml
{"IsPaginated":false,"Items":[{"Email":"john@example.com","Fields":[{"Description":"FirstName","Id":1,"Value":""},{"Description":"LastName","Id":2,"Value":""},{"Description":"Company","Id":3,"Value":""},{"Description":"City","Id":4,"Value":""},{"Description":"Province","Id":5,"Value":""},{"Description":"ZIP","Id":6,"Value":""},{"Description":"State","Id":7,"Value":""},{"Description":"Region","Id":8,"Value":""},{"Description":"Address","Id":9
  • 2/Emails?tags="13,customers,welcome message,'hello, world'"

Retrieve only the newsletter messages:

  • https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/2/Emails?filterby="servicetype==0"

Retrieve only the SMTP+ messages:

  • https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/2/Emails?filterby="servicetype==1"

Read message details

DescriptionRetrieve the email details (content, settings, attachment) by specified id

HTTP Method

GET

URL

Retrieve the email details by specified id

Code Block
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Email/{id_Message}


Get attachment list for the specified message-id

Code Block
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Email/{id_Message}/Attachment


JSON request (example)

none

JSON response (example)

Message content

Expand


Code Block
{"Subject":"Monthly Newsletter","idList":2,"idMessage":24,"Content":"
<table><tbody><tr><td><strong>Image</strong>&nbsp;</td><td><strong>Text</strong>&nbsp;</td></tr><tr><td style="width: 200px; height: 70px;">&nbsp;<img src="http://d0i4f.s57.it/images/2/ListImages/sociallogin.PNG" alt="This text is visible if you do not see images" title="SocialLogin" longdesc="Social Login Image" width="200" height="70"></td><td>&nbsp;This screenshot shows you how to perform login with social networks<br>&nbsp;(see <a href="http://[track]/https://help.mailup.com" target="_blank" id="User" s="" manual'="">manual</a>)&nbsp;</td></tr></tbody></table>
","Embed":false,"Fields":[{"Description":"FirstName","Id":1,"Value":""},{"Description":"
Gender
LastName","Id":
10
2,"Value":""},{"Description":"
phone
Company","Id":
11
3,"Value":""},{"Description":"
CustomerID
City","Id":
12
4,"Value":""},{"Description":"
LatestOrderID
Province","Id":
13
5,"Value":""},{"Description":"
LatestOrderDate
ZIP","Id":
14
6,"Value":""},{"Description":"
LatestOrderAmount
State","Id":
15
7,"Value":""},{"Description":"
LatestOrderProductIDs
Region","Id":
16
8,"Value":""},{"Description":"
LatestOrderCategoryIDs
Address","Id":
17
9,"Value":""},{"Description":"
LatestShippedOrderDate
Gender ","Id":
18
10,"Value":""},{"Description":"
LatestShippedOrderID
phone","Id":
19
11,"Value":""},{"Description":"
LatestAbandonedCartDate
CustomerID","Id":
20
12,"Value":""},{"Description":"
LatestAbandonedCartTotal
LatestOrderID","Id":
21
13,"Value":""},{"Description":"
LatestAbandonedCartID
LatestOrderDate","Id":
22
14,"Value":""},{"Description":"
TotalOrdered
LatestOrderAmount","Id":
23
15,"Value":""},{"Description":"
TotalOrderedLast12m
LatestOrderProductIDs","Id":
24
16,"Value":""},{"Description":"
TotalOrderedLast30d
LatestOrderCategoryIDs","Id":
25
17,"Value":""},{"Description":"
AllOrderedProductIDs
LatestShippedOrderDate","Id":
26
18,"Value
":""}],"MobileNumber":null,"MobilePrefix":null,"Name
":
null,
"
idRecipient
"
:16
},{
"Email":
"
mary@example.com","Fields":[{"
Description":"
FirstName
LatestShippedOrderID","Id":
1
19,"Value":""},{"Description":"
LastName
LatestAbandonedCartDate","Id":
2
20,"Value":""},{"Description":"
Company
LatestAbandonedCartTotal","Id":
3
21,"Value":""},{"Description":"
City
LatestAbandonedCartID","Id":
4
22,"Value":""},{"Description":"
Province
TotalOrdered","Id":
5
23,"Value":""},{"Description":"
ZIP
TotalOrderedLast12m","Id":
6
24,"Value":""},{"Description":"
State
TotalOrderedLast30d","Id":
7
25,"Value":""},{"Description":"
Region
AllOrderedProductIDs","Id":
8
26,"Value":""},{"Description":"
Address
WantsBlogUpdate","Id":
9
27,"Value":""}],
{
"
Description
IsConfirmation":
"Gender "
false,"
Id
Notes":
10,"Value":""},{"Description":"phone"
"Issue n. 5 May 2014","Tags":[{"Enabled":false,"Id":
11
5,"
Value
Name":"news"},{"
Description
Enabled":
"CustomerID"
false,"Id":
12
4,"
Value
Name":"users-manual"}],"TrackingInfo":{"
Description
CustomParams":"
LatestOrderID
","
Id
Enabled":
13
true,"
Value
Protocols":["http:"
}
,
{
"
Description"
https:"
LatestOrderDate"
,"
Id
ftp:"
:14
,"
Value"
news:"
"
]},"Attachments":[{"
Description
Name":"
LatestOrderAmount
24\/jp.txt","
Id
Path":
15,
"
Value":""},{"Description":"LatestOrderProductIDs","Id":16,"Value":""},{"Description":"LatestOrderCategoryIDs","Id":17,"Value":""},{"Description":"LatestShippedOrderDate","Id":18,"Value":""},{"Description":"LatestShippedOrderID","Id":19,"Value":""},{"Description":"LatestAbandonedCartDate","Id":20,"Value":""},{"Description":"LatestAbandonedCartTotal","Id":21,"Value":""},{"Description":"LatestAbandonedCartID","Id":22,"Value":""},{"Description":"TotalOrdered","Id":23,"Value":""},{"Description":"TotalOrderedLast12m","Id":24,"Value":""},{"Description":"TotalOrderedLast30d","Id":25,"Value":""},{"Description":"AllOrderedProductIDs","Id":26,"Value":""}],"MobileNumber":null,"MobilePrefix":null,"Name":null,"idRecipient":15},{"Email":"susan@example.com","Fields":[{"Description":"FirstName","Id":1,"Value":"Susan"},{"Description":"LastName","Id":2,"Value":"Smith"},{"Description":"Company","Id":3,"Value":"ACME"},{"Description":"City","Id":4,"Value":"Milan"},{"Description":"Province","Id":5,"Value":"MI"},{"Description":"ZIP","Id":6,"Value":"20100"},{"Description":"State","Id":7,"Value":"Italy"},{"Description":"Region","Id":8,"Value":""},{"Description":"Address","Id":9,"Value":""},{"Description":"Gender ","Id":10,"Value":"male"},{"Description":"phone","Id":11,"Value":"1234567"},{"Description":"CustomerID","Id":12,"Value":"1"},{"Description":"LatestOrderID","Id":13,"Value":"6"},{"Description":"LatestOrderDate","Id":14,"Value":"1397470773"},{"Description":"LatestOrderAmount","Id":15,"Value":"1000"},{"Description":"LatestOrderProductIDs","Id":16,"Value":"1"},{"Description":"LatestOrderCategoryIDs","Id":17,"Value":"1"},{"Description":"LatestShippedOrderDate","Id":18,"Value":"1397470973"},{"Description":"LatestShippedOrderID","Id":19,"Value":"6"},{"Description":"LatestAbandonedCartDate","Id":20,"Value":"1397468462"},{"Description":"LatestAbandonedCartTotal","Id":21,"Value":"200"},{"Description":"LatestAbandonedCartID","Id":22,"Value":"1"},{"Description":"TotalOrdered","Id":23,"Value":"1200"},{"Description":"TotalOrderedLast12m","Id":24,"Value":"1200"},{"Description":"TotalOrderedLast30d","Id":25,"Value":"1200"},{"Description":"AllOrderedProductIDs","Id":26,"Value":"1,2"}],"MobileNumber":"","MobilePrefix":"","Name":"Test","idRecipient":14},{"Email":"peter@example.com","Fields":[{"Description":"FirstName","Id":1,"Value":""},{"Description":"LastName","Id":2,"Value":""},{"Description":"Company","Id":3,"Value":""},{"Description":"City","Id":4,"Value":""},{"Description":"Province","Id":5,"Value":""},{"Description":"ZIP","Id":6,"Value":""},{"Description":"State","Id":7,"Value":""},{"Description":"Region","Id":8,"Value":""},{"Description":"Address","Id":9,"Value":""},{"Description":"Gender ","Id":10,"Value":""},{"Description":"phone","Id":11,"Value":""},{"Description":"CustomerID","Id":12,"Value":""},{"Description":"LatestOrderID","Id":13,"Value":""},{"Description":"LatestOrderDate","Id":14,"Value":""},{"Description":"LatestOrderAmount","Id":15,"Value":""},{"Description":"LatestOrderProductIDs","Id":16,"Value":""},{"Description":"LatestOrderCategoryIDs","Id":17,"Value":""},{"Description":"LatestShippedOrderDate","Id":18,"Value":""},{"Description":"LatestShippedOrderID","Id":19,"Value":""},{"Description":"LatestAbandonedCartDate","Id":20,"Value":""},{"Description":"LatestAbandonedCartTotal","Id":21,"Value":""},{"Description":"LatestAbandonedCartID","Id":22,"Value":""},{"Description":"TotalOrdered","Id":23,"Value":""},{"Description":"TotalOrderedLast12m","Id":24,"Value":""},{"Description":"TotalOrderedLast30d","Id":25,"Value":""},{"Description":"AllOrderedProductIDs","Id":26,"Value":""}],"MobileNumber":null,"MobilePrefix":null,"Name":null,"idRecipient":13}],"PageNumber":0,"PageSize":20,"Skipped":0,"TotalElementsCount":4}

Paging and filtering (example)

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

  • https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/1/Recipients/Subscribed?PageNumber=0&PageSize=2

Retreive all the subscribers of a specified list whose Email contains 'example' filterby="Email.Contains('example')" and sort them by Email orderby="Email asc". Parameter names can be retreived from the response body. Please note that "Contains" is case sensitive.

  • https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/1/Recipients/Subscribed?filterby="Email.Contains(%27example%27)"&orderby="Email+asc"

 

 

Read unsubscribed recipients on Email channel

As for "subscribed", but in this case the endpoint is /Console/List/{ID_LIST}/Recipients/Unsubscribed. 

Code Block
GET https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{ID_LIST}/Recipients/Unsubscribed

Read pending recipients on Email channel

As for "subscribed", but in this case the endpoint is /Console/List/{ID_LIST}/Recipients/Pending. 

Code Block
GET https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{ID_LIST}/Recipients/Pending

Retrieve recipients that belong to a group

A recipient can belong to zero, one or more groups of a list, regardless its subscription status in that list. 

Read group members

Description

Retreive only email subscribers that belong to specified group. Group members that are not subscribed on email channel are not returned

HTTP Method

GET

URL

Code Block
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/Group/{id_Group}/Recipients

JSON request (example)

none

JSON response (example)

Expand
Code Block
languagehtml/xml
{"IsPaginated":false,"Items":[{"Email":"peter@example.com","Fields":[{"Description":"FirstName","Id":1,"Value":""},{"Description":"LastName","Id":2,"Value":""},{"Description":"Company","Id":3,"Value":""},{"Description":"City","Id":4,"Value":""},{"Description":"Province","Id":5,"Value":""},{"Description":"ZIP","Id":6,"Value":""},{"Description":"State","Id":7,"Value":""},{"Description":"Region","Id":8,"Value":""},{"Description":"Address","Id":9,"Value":""},{"Description":"Gender ","Id":10,"Value":""},{"Description":"phone","Id":11,"Value":""},{"Description":"CustomerID","Id":12,"Value":""},{"Description":"LatestOrderID","Id":13,"Value":""},{"Description":"LatestOrderDate","Id":14,"Value":""},{"Description":"LatestOrderAmount","Id":15,"Value":""},{"Description":"LatestOrderProductIDs","Id":16,"Value":""},{"Description":"LatestOrderCategoryIDs","Id":17,"Value":""},{"Description":"LatestShippedOrderDate","Id":18,"Value":""},{"Description":"LatestShippedOrderID","Id":19,"Value":""},{"Description":"LatestAbandonedCartDate","Id":20,"Value":""},{"Description":"LatestAbandonedCartTotal","Id":21,"Value":""},{"Description":"LatestAbandonedCartID","Id":22,"Value":""},{"Description":"TotalOrdered","Id":23,"Value":""},{"Description":"TotalOrderedLast12m","Id":24,"Value":""},{"Description":"TotalOrderedLast30d","Id":25,"Value":""},{"Description":"AllOrderedProductIDs","Id":26,"Value":""}],"MobileNumber":null,"MobilePrefix":null,"Name":null,"idRecipient":13}],"PageNumber":0,"PageSize":20,"Skipped":0,"TotalElementsCount":1}

Paging and filtering (example)

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

  • https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/Group/27/Recipients?PageNumber=0&PageSize=2

Retreive all the subscribers of a specified list whose Email contains 'example' filterby="Email.Contains('example')" and sort them by Email orderby="Email asc". Parameter names can be retreived from the response body. Please note that "Contains" is case sensitive.

  • https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/Group/27/Recipients?filterby="Email.Contains(%27example%27)"&orderby="Email+asc"

 

 

Asynchronous import of recipients

Asynchronous import is used either for adding a single recipient to MailUp or to perform a bulk import.
Since it's not synchronous, it is fast but not immediate, please check the import status in order to know when the import task is completed. 

Note

In case of bulk import, the upper limit for parameter size is configured as 500MB for each call. In any case we recommend to set a configurable upload size limit in your application and make a test with this size. When parameter size exceeds this limit you can split the list of recipients in more blocks and perform more requests. When more import requests are pending, MailUp processes them in a sequential order.

Import recipients

Description

Create and execute a task that imports specified recipients. Import task ID is returned

Expand
titleClick here to see how already existing recipients are managed ...
  • Brand new recipents are added and subscribed to the list
  • Recipents that exist on other lists are subscribed to the list
  • Already subscribed recipents remain subscribed
  • Previously unsubscribed or pending recipients are updated but their subscription status does not change
  • If the recipient alrady exists it is updated if specified personal data are different from the specified ones. Empty fields are managed as "do not change"
  • Please refer to management of single recipient if you want to access to more advanced features like forcing subscription/unsubsubscription or if you want to clear a personal data field

HTTP Method

POST

URL

Import recipients into a list

Code Block
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Recipients

 

Import recipients into a group (a group always belongs to a single list)

Code Block
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/Group/{ID_GROUP}/Recipients

JSON request (example)

Expand

The example below imports two recipients. For each recipient to be imported you may specify a different set of "Fields" values. Please note that field value names are configurable and default values are language specific, therefore names in your console account can be different than what you see below

Code Block
languagehtml/xml
[{
"Email":"john@doe.com",
"Name":"john doe",
"Fields":{
"FirstName":"john",
"LastName":"doe",
"Company":"john's Uber Awesome Company",
"Phone":"1115559999",
"LatestOrderId":1000,
"LatestOrderDate":"2013-12-13T16:52:08.3112622Z",
"LatestOrderAmount":100.99,
"LatestOrderProductIds":[100,101],
"LatestOrderCategoryIds":[1,2],
"LatestShippedOrderId":1000,
"LatestShippedOrderDate":"2013-12-14T16:52:08.3112622Z",
"TotalOrdered":100.99,
"TotalOrderedLastMonth":100.99,
"AllOrderedProductIds":[100,101]}
},
{
"Email":"mary@poppins.com",
"Name":"Mary Poppins",
"Fields":{
"FirstName":"Mary",
"LastName":"Poppins",
"Company":"Freelance",
"LatestOrderId":1000,
"LatestOrderDate":"2014-04-31T16:10:00.3112622Z",
}
}]

JSON response (example)

3

 

Paging and filtering (example)

none

 

Read Import Status

Description

Read status of an import task by specifying its ID. List ID is not required.

HTTP Method

GET

URL

Code Block
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/Import/{IMPORT_ID}

JSON request (example)

none

 

JSON response (example)

Code Block
languagehtml/xml
{"Completed":true,"CreatedRecipients":1,"ImportedRecipients":0,"NotValidRecipients":0,"UpdatedRecipients":0,"ValidRecipients":1,"idImport":3}

Paging and filtering (example)

none

 

 

Manage a single email recipient / subscriber

Info

Definitions:

  • Email Recipient = with reference to a MailUp console account, it's an end user whose email address and optionally personal data fields is added to MailUp. A recipient may be subscribed, not subscribed, unsubscribed or pending on MailUp lists
  • Email Subscriber = with reference to a specific MailUp list, it's a recipient that is currently subscribed to that list

Create a recipient / subscriber

A single recipient can be added to a console account by calling Import Recipients and passing its details (at least one between email and mobile number and, optionally, personal data fields) as parameter.

Code Block
POST https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Recipients

 

You cannot create a new recipient without subscribing it

Expand
titleClick here for more details...
Use caseActionDescription
Brand new recipientadded and subscribednot existing in any list of that account
Recipient is already subscribed on that listpersonal data fields are updatedemail address and mobile number are primary keys
Recipient is already subscribed/unsubscribed on another listsubscribed to specified list, personal data fields are updated 
Key mismatchrequest is deniedRecipient was already present with both email address and mobile number, import operation provides the same email and a different mobile number (or viceversa)

Update personal data fields of a subscriber

This section refers to changes on personal data fields of specified recipient (that must already exist)

Update operation requires

  • Recipient ID, which can be retrieved with the operation listed above (Check if a subscriber exists)
  • The IDs of the fields to be updated

Description

Retrieve recipient dynamic field definitions.

HTTP Method

PUT

URL

Code Block
http:\/\/d0i4f.s57.it\\d0i4f\\download\\24\\24\/jp.txt","Slot":1}]}



Message attachments

Expand


Code Block
[{"Name":"24\/jp.txt","Path":"http:\/\/d0i4f.s57.it\\d0i4f\\download\\24\\24\/jp.txt","Slot":1}]



Paging and filtering (example)

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

Retrieve messages that contain the word "test" in the subject field and order by ID. Note: search by text is case sensitive

Sending Queue Status

It is possible to retrieve the status of the sending queue for the outgoing messages by calling the following methods:

1)  status of ongoing sendings: GET https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/Email/Sendings/Immediate

2)  status of waiting sendings: GET https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/Email/Sendings/Deferred

3)  status of sending to be planned: GET https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/Email/Sendings/Undefined

Moreover, it is possible to retrieve the first available date to send a specific sending:

GET https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/Email/Sending/{id_sending}/Deferred

where {id_sending} is the unique identifier of the sending to consider. The result is the date UTC date specified with the format described in the section 'Type and cast definition' of this page: "Paging and filtering".

Update message

This method allows you to modify an existing message (content and settings).

Please note that

  • The "Tags" field is mandatory, if you leave it empty the existing tags of that message are not modified. There is no way to clear all tags
  • "Fields" parameter is optional
  • "TrackingInfo > Protocols" field values are ignored if "TrackingInfo > Enabled" is set to false
DescriptionModify an existing message

HTTP Method

PUT

URL


Code Block
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Email/{id_Message}


JSON request (example)

Request data format is the same as the response of "GET /Console/List/{id_List}/Email/{id_Message}"

Expand


Code Block
{"Subject":"Annual Newsletter n.9","idList":2,"Content":"<table><tbody><tr><td><strong>Image<\/strong>&nbsp;<\/td><td><strong>Text<\/strong>&nbsp;<\/td><\/tr><tr><td style=\"width: 200px; height: 70px;\">&nbsp;<img src=\"http:\/\/d0i4f.s57.it\/images\/2\/ListImages\/sociallogin.PNG\" alt=\"This text is visible if you do not see images\" title=\"SocialLogin\" longdesc=\"Social Login Image\" width=\"200\" height=\"70\" ><\/td><td>&nbsp;This screenshot shows you how to perform login with social networks<br>&nbsp;(see <a href=\"http:\/\/[track]\/https:\/\/help.mailup.com\" target=\"_blank\" id=\"User\" s=\"\" manual'=\"\">manual<\/a>)&nbsp;<\/td><\/tr><\/tbody><\/table>","Embed":false,"IsConfirmation":false,"Notes":"Issue n. 9 June 2014","Tags":[],"TrackingInfo":{"CustomParams":"","Enabled":true,"Protocols":["http:","ftp:","news:"]}}



JSON response (example)


Code Block
{"Subject":"Monthly Newsletter!","idList":2,"idMessage":24}


Paging and filtering (example)

none

Manage tags

DescriptionRead available tags for a specified list

HTTP Method

GET, POST, PUT, DELETE

URL

Retrieve list tags:

Code Block
GET https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Tags

Create a new tag:

Code Block
POST https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Tag

Modify a tag:

Code Block
PUT https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Tag/{id_Tag}

Remove a list tag:

Code Block
DELETE https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Tag/{id_Tag}


JSON request (example)

  • No request body is required for GET and DELETE methods
  • POST method requires a simple string as parameter (e.g. "my-new-tag"), not a JSON structure
  • PUT method requires a full structure like {"Enabled":true,"Id":6,"Name":"my-new-tag"}

JSON response (example)

GET method returns the retrieved tags list

Expand


Code Block
{"IsPaginated":false,"Items":[{"Enabled":true,"Id":5,"Name":"news"},{"Enabled":true,"Id":4,"Name":"users-manual"},{"Enabled":true,"Id":3,"Name":"$5 off promo"},{"Enabled":true,"Id":2,"Name":"preferred customer"},{"Enabled":true,"Id":1,"Name":"promotion"}],"PageNumber":0,"PageSize":20,"Skipped":0,"TotalElementsCount":5}



POST and PUT methods return the full structure of the created/updated tag, e.g.  {"Enabled":true,"Id":6,"Name":"my-new-tag"}

An empty response is returned by DELETE method

Paging and filtering (example)

none

Manage email attachments

MailUp messages support a maximum of five attachments. Each attachment is placed in a specified "slot": adding and removing an attachment means adding to a message "slot" or removing from it.

DescriptionRead, add and remove message attachments

HTTP Method

GET, POST, DELETE

URL

Retrieve all the attachments of a specified message

Code Block
GET https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Email/{id_Message}/Attachment


Add an attachment to the message slot

Code Block
POST https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Email/{id_Message}/Attachment/{Slot}


Remove an attachment from a message slot

Code Block
DELETE https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Email/{id_Message}/Attachment/{Slot}


JSON request (example)

Only the POST method needs a request parameter. The attachment has to be Base64 encoded

Expand

You can use a free tool like this to quickly get the Base64 version of an uploaded file (please note that some tools introduce special chars like CR or LF inside the Base64 string, remove them to avoid HTTP 400 errors)

Code Block
 {"Base64Data":"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",	"Name":"10-years.png",	"Slot":2,	"idList":2,	"idMessage":24}



JSON response (example)

The GET method returns a list of the documents that are attached to the specified message. An empty array ([], not JSON format) is returned if no document is attached.

Expand

In this case, the specified message (with ID=28) has five attachments

Code Block
[{"Name":"28\/readme.txt","Path":"http:\/\/d0i4f.s57.it\\d0i4f\\download\\28\\28\/readme.txt","Slot":1},{"Name":"28\/optin1.csv","Path":"http:\/\/d0i4f.s57.it\\d0i4f\\download\\28\\28\/optin1.csv","Slot":2},{"Name":"28\/product-logo.png","Path":"http:\/\/d0i4f.s57.it\\d0i4f\\download\\28\\28\/product-logo.png","Slot":3},{"Name":"28\/Feature User Guide 1 0.pdf","Path":"http:\/\/d0i4f.s57.it\\d0i4f\\download\\28\\28\/Feature User Guide 1 0.pdf","Slot":4},{"Name":"28\/max.jpg","Path":"http:\/\/d0i4f.s57.it\\d0i4f\\download\\28\\28\/max.jpg","Slot":5}]



POST method returns the list of attachments after the command execution

Expand


Code Block
[{"Name":"24\/jp.txt","Path":"http:\/\/d0i4f.s57.it\\d0i4f\\download\\24\\24\/jp.txt","Slot":1},{"Name":"24\/10-years.png","Path":"http:\/\/d0i4f.s57.it\\d0i4f\\download\\24\\24\/10-years.png","Slot":2}]



DELETE method returns details about remaining attachments after deletion

Expand

The same result is returned even if an empty slot is specified (of course in this case no deletion occurs)

Code Block
[{"Name":"24\/10-years.png","Path":"http:\/\/d0i4f.s57.it\\d0i4f\\download\\24\\24\/10-years.png","Slot":2}]



Paging and filtering (example)

none

Copy message

Description

Copy an existing message

HTTP Method

POST

URL


Code Block
titleCreate a message
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/
Recipient/DynamicFields

Description

Add/remove the recipient with the related id to the specified group

HTTP Method

POST/DELETE

URL

Subscribe

list/{id_List}/Email/{id_Message}


JSON request (example)

Expand

Modifying the "Region" field for recipient with ID = 23

Code Block
[{
	"Email":"test25@example.com",
	"Fields":[{
		"Description":"Region",
		"Id":8,
		"Value":"England"
	}],
	"Name":"Test",
	"idRecipient":23
}]

JSON response (example)

Expand
Code Block
{"IsPaginated":false,"Items":[{"Email":"test25@example.com","Fields":[{"Description":"FirstName","Id":1,"Value":""},{"Description":"LastName","Id":2,"Value":""},{"Description":"Company","Id":3,"Value":""},{"Description":"City","Id":4,"Value":""},{"Description":"Province","Id":5,"Value":""},{"Description":"ZIP","Id":6,"Value":""},{"Description":"State","Id":7,"Value":""},{"Description":"Region","Id":8,"Value":"Italy"},{"Description":"Address","Id":9,"Value":""},{"Description":"Gender ","Id":10,"Value":""},{"Description":"phone","Id":11,"Value":""},{"Description":"CustomerID","Id":12,"Value":""},{"Description":"LatestOrderID","Id":13,"Value":""},{"Description":"LatestOrderDate","Id":14,"Value":""},{"Description":"LatestOrderAmount","Id":15,"Value":""},{"Description":"LatestOrderProductIDs","Id":16,"Value":""},{"Description":"LatestOrderCategoryIDs","Id":17,"Value":""},{"Description":"LatestShippedOrderDate","Id":18,"Value":""},{"Description":"LatestShippedOrderID","Id":19,"Value":""},{"Description":"LatestAbandonedCartDate","Id":20,"Value":""},{"Description":"LatestAbandonedCartTotal","Id":21,"Value":""},{"Description":"LatestAbandonedCartID","Id":22,"Value":""},{"Description":"TotalOrdered","Id":23,"Value":""},{"Description":"TotalOrderedLast12m","Id":24,"Value":""},{"Description":"TotalOrderedLast30d","Id":25,"Value":""},{"Description":"AllOrderedProductIDs","Id":26,"Value":""}],"MobileNumber":null,"MobilePrefix":null,"Name":null,"idRecipient":23}],"PageNumber":0,"PageSize":20,"Skipped":0,"TotalElementsCount":1}

Paging and filtering (example)

none

 

Update subscription status of a recipient

You can use API to force subscription or unsubscription status of an existing recipient on a specified list. Unsubscription though REST API can be performed only in this way, since bulk unsubscription is not available yet.

Update operation requires

  • Recipient ID, refer to section "Check if a subscriber exists"
  • List ID
Note

 POST operation described in this section enables you to force subscription of unsubscribed recipients regardless the unsubscription reason. It is recommendend that you use this feature only if you're aware of its effects.

Copy message as-is:

Code Block
POST https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/list/2/Email/135

Copy message modifying Notes:

Code Block
POST https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/list/2/Email/135


{"Notes": "This is a new note!!!"}

Copy message modifying Subject:

Code Block
POST https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/list/2/Email/135


{"Subject": "This is the new subject!!!"}

Copy message modifying Subject and Notes:

Code Block
POST https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/list/2/Email/135


{
	"Subject": "This is the new subject!!!",
	"Notes": "This is a new note!!!"
}


JSON response (example)


Code Block
{
    "CreationDate": "2017-08-30 15:24:07Z",
    "Notes": "This is a new note!!!",
    "Subject": "Important email",
    "idList": 1,
    "idMessage": 136
}




Paging and filtering (example)


Manage message online visibility

Description

Publish an existing message

HTTP Method

PUT

URL


Code Block
titleCreate a message
https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/list/{id_List}/Email/{id_Message}/OnlineVisibility


JSON request (example)

Publish a message:

Code Block
PUT https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/list/2/Email/135/OnlineVisibility
 
true

Unpublish a message:

Code Block
PUT https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/list/2/Email/135/OnlineVisibility

false


JSON response (example)

None 

Paging and filtering (example)


...

Send Email Messages

This section contains methods to send messages and to retrieve the history of sent messages.

You can enrich the calls to send messages using some query string parameters, as follow:

Querystring parameterDescriptionExample
SenderName
SenderAddress
Email messages are usually sent with the sender name and the sender name that is specified as default settings for the MailUp list.
As an alternative, you can specify a different sender for a certain sending by specifying "SenderName" and "SenderAddress" parameters.
You have to provide
both parameters and not only one of them.
POST .../Send?SenderName='John Smith'&SenderAddress='smith@example.com'
DateTime

It is possible to specify an eventual UTC date/time for a deferred sending.
When a message send is scheduled you cannot modify it.
The format described in the section 'Type and cast definition' of this page: "Paging and filtering".

POST .../Send?datetime="2014-10-20 05:00:00Z"
It is possible to specify the value undefined for the DateTime query string parameter.
It means the message sending is scheduled as inactive. This option allows you to create a relationship between the messageand the recipients, as a snapshot: you can modify the message and when the message is ready you can decide to schedule the newsletter or to send it immediately.
POST .../Send?datetime="undefined"

It is possible to omit the DateTime query string parameter (default) or set its value to now.
It means the message is enqueued and it will be sent when the dequeue process reaches it.

Note
titleImportant tip!

As you can imagine, if you use this option to send to some recipients and you use the method to send to a single recipient now, you append a lot of items to your sending queue. Every time an item is processed, it starts a verification process that requires some seconds: if you enqueue 10.000 items your sending period could be very long. So, if you need to send to a single recipient we suggest using our Transactional Emails APIs; otherwise, please use a list or groups to enqueue multi-recipients items to the sending queue.


POST .../Send

POST .../Send?datetime="now"

replytoIt is possible to specify an email address for a reply.POST .../Send?replyto="replyto@yourdomain.it"


Note

Message sending fails with HTTP 500 error if no authorized sender email nor sender email are provided. Ensure that sender name and sender email have been configured at list level (starting from MailUp version 8.6.1 the sender address has also to be a verified address)


Send to all subscribers

DescriptionSend a message to all list subscribers

HTTP Method

POST

URL

 Use the default list sender

Code Block
POST https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Email/{id_Message}/Send

Use the sender that is provided by query string parameters

Code Block
POST https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Email/{id_Message}/Send?SenderName="{name}"&SenderAddress="{email}"


JSON request (example)

none

JSON response (example)

See notes at the bottom of this page1

Code Block
{"Id":2147483647,"InvalidRecipients":[],"Sent":7,"UnprocessedRecipients":[],"idMessage":24}


Paging and filtering (example)

none

Send to list recipients filtering by groups

Description

You may need to restrict your mailing to those recipients that belong to some MailUp groups or you may need to exclude the recipients of some groups.
When using specific query string parameters with a valid value, the Send method allows including or excluding the recipients that belong to a list of specified groups.

Here is how it works:

  • use the inGroups query string parameter to set the IDs of the MailUp groups to be included (i.e. all the group members will be added)
  • use the notInGroups query string parameter to set the IDs of the MailUp groups to be excluded;

Please note that all the parameters' values must correspond to groups that belong to the MailUp list {id_List} specified in the REST endpoint.

HTTP Method

POST

URL

Inclusion

Include recipients that belong to one or more groups.
It is mandatory that at least one of provided groups belongs to the specified MailUp list, otherwise the method returns a 500 error. In case of empty values, the inGroups parameter is ignored and the message is sent to all the MailUp list recipients
If a recipient belongs to more than one group, it will be added just one time.

Code Block
POST https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Email/{id_Message}/Send?inGroups=12
POST https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Email/{id_Message}/Send?inGroups=12,23,45


Exclusion

Exclude subscribers that belong to one or more groups.
If the specified MailUp list does not contain all the provided groups, the method does not exclude any recipient and sends the newsletter to all the MailUp list recipients.

Code Block
POST https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/
Subscribe
Email/{id_
Recipient}

 

Unsubscribe

Code BlockDELETE
Message}/Send?notInGroups=12
POST https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/
Unsubscribe
Email/{id_
Recipient}

JSON request (example)

none

JSON response (example)

none

Paging and filtering (example)

none

 

Update group membership of a subscriber

You can use API to add or remove an existing recipient from a specified group. 

Update operation requires

  • Recipient ID, refer to section "Check if a subscriber exists"
  • The Group ID

Description

Add/remove the recipient with the related id to the specified group

HTTP Method

POST/DELETE

URL

Add
Message}/Send?notInGroups=12,23,45


Inclusion and exclusion

This is a case that merges the cases seen above: both inGroups and notInGroups are used.

inGroups: at least one of the provided groups must belong to the specified MailUp list. Otherwise, the method returns a 500 error. In case of empty values, the inGroups parameter is ignored and the message is sent to all the MailUp list recipients.

notInGroups: if the specified MailUp list does not contain all the provided groups, the method does not exclude any recipient and sends the newsletter to all the recipients filtered by the inGroups parameter.

Code Block
POST https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/
Group
List/{id_
Group
List}/
Subscribe
Email/{id_
Recipient}

 

Remove

Code BlockDELETE
Message}/Send?inGroups=12&notInGroups=89,90
POST https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/
Group
List/{id_
Group
List}/
Subscribe
Email/{id_
Recipient}

JSON request (example)

none

JSON response (example)

none

Paging and filtering (example)

none

Check if a subscriber exists

With this method you can also retreive recipientID and personal data fields of the recipient with the specified email

Note
titleKnown restriction

If you are using this method to retrieve recipient ID, unfotunately there is not a method that allows you to search recipient "by email address regardless the subscription status". Hence, it is possible that you have to make up to three search: in subscribed, in unsubscribed and finally in pending recipients of that list,

Description

Check subscriber and retreive data

HTTP Method

GET

URL

Message}/Send?inGroups=12,23,45&notInGroups=89


JSON request (example)

none

JSON response (example)

See notes at the bottom of this page1

Code Block
{"Id":2147483647,"InvalidRecipients":[],"Sent":7,"UnprocessedRecipients":[],"idMessage":24}


Paging and filtering (example)

none


Send to a group

Use the default list sender or a sender that is provided by query string parameters (see example above)

DescriptionSend a message to all subscribers of a specified group

HTTP Method

POST

URL


Code Block
POST https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/
List/3/Recipients/Subscribed?filterby="Email.Contains('{Email}')"see example in the "paging and filtering" row
Group/{id_Group}/Email/{id_Message}/Send


JSON request (example)

none

 

Paging and filtering (example)

https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/3/Recipients/Subscribed?filterby="Email.Contains(%27peter@example.com%27)"

JSON response (example)

Expand

when the specified recipient belongs to list suscribers the response contains the personal data fields of the recipient

Code Block
languagehtml/xml
{"IsPaginated":false,"Items":[{"Email":"peter@example.com","Fields":[{"Description":"FirstName","Id":1,"Value":""},{"Description":"LastName","Id":2,"Value":""},{"Description":"Company","Id":3,"Value":""},{"Description":"City","Id":4,"Value":""},{"Description":"Province","Id":5,"Value":""},{"Description":"ZIP","Id":6,"Value":""},{"Description":"State","Id":7,"Value":""},{"Description":"Region","Id":8,"Value":""},{"Description":"Address","Id":9,"Value":""},{"Description":"Gender ","Id":10,"Value":""},{"Description":"phone","Id":11,"Value":""},{"Description":"CustomerID","Id":12,"Value":""},{"Description":"LatestOrderID","Id":13,"Value":""},{"Description":"LatestOrderDate","Id":14,"Value":""},{"Description":"LatestOrderAmount","Id":15,"Value":""},{"Description":"LatestOrderProductIDs","Id":16,"Value":""},{"Description":"LatestOrderCategoryIDs","Id":17,"Value":""},{"Description":"LatestShippedOrderDate","Id":18,"Value":""},{"Description":"LatestShippedOrderID","Id":19,"Value":""},{"Description":"LatestAbandonedCartDate","Id":20,"Value":""},{"Description":"LatestAbandonedCartTotal","Id":21,"Value":""},{"Description":"LatestAbandonedCartID","Id":22,"Value":""},{"Description":"TotalOrdered","Id":23,"Value":""},{"Description":"TotalOrderedLast12m","Id":24,"Value":""},{"Description":"TotalOrderedLast30d","Id":25,"Value":""},{"Description":"AllOrderedProductIDs","Id":26,"Value":""}],"MobileNumber":null,"MobilePrefix":null,"Name":null,"idRecipient":13}],"PageNumber":0,"PageSize":20,"Skipped":0,"TotalElementsCount":1}

when the specified recipient does not belong to list subscribers (i.e. it may be not existing but also unsubscribed or subscribed only to other MailUp lists for that console account) an empty list is returned

Code Block
{"IsPaginated":false,"Items":[],"PageNumber":0,"PageSize":20,"Skipped":0,"TotalElementsCount":0}

See notes at the bottom of this page1

Code Block
{"Id":2147483647,"InvalidRecipients":[],"Sent":3,"UnprocessedRecipients":[],"idMessage":30}


Paging and filtering (example)

none

Send to a recipient

Use the default list sender or a sender that is provided by query string parameters (see example above)

DescriptionSend a message to a single recipient

HTTP Method

POST

URL


Code Block
POST https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/Email/Send


JSON request (example)


Code Block
{
	"Email":"cheetah@jungle.net",
	"idMessage":30
}


JSON response (example)

See notes at the bottom of this page1

Code Block
{"Id":2147483647,"InvalidRecipients":[],"Sent":1,"UnprocessedRecipients":[],"idMessage":30}


Paging and filtering (example)

none

Retrieve sending history

An email message can be sent several times. This feature allows retrieving details about each sending.

DescriptionRetrieve information about the sent history

HTTP Method

GET

URL


Code Block
GET https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/List/{id_List}/Email/{id_Message}/SendHistory


JSON request (example)

none

JSON response (example)


Expand

An email message has been sent three times with different senders, here below the results

Code Block
{
	"IsPaginated":false,
	"Items":[
		{
			"Id": 26,
			"EndDate":"2014-04-01 13:53:06Z",
			"Kb_transferred":6302,
			"Recipients":1,
			"SenderEmail":"marketing@example.com",
			"SenderName":"Your Dealer",
			"StartDate":"2014-04-01 13:52:35Z",
			"idMessage":12
		},
		{
			"Id": 27,
			"EndDate":"2014-04-01 13:54:32Z",
			"Kb_transferred":12604,
			"Recipients":2,
			"SenderEmail":"brown@example.com",
			"SenderName":"Mike Brown",
			"StartDate":"2014-04-01 13:53:57Z",
			"idMessage":12
		},
		{
			"Id": 28,
			"EndDate":"2014-04-06 13:48:33Z",
			"Kb_transferred":12604,
			"Recipients":2,
			"SenderEmail":"sales@example.com",
			"SenderName":"Sales",
			"StartDate":"2014-04-06 13:48:04Z",
			"idMessage":12
		}],
	"PageNumber":0,
	"PageSize":20,
	"Skipped":0,
	"TotalElementsCount":3
}



Paging and filtering (example)

N/A


  1. "Id" is the sending identifier. "Sent" is the size of the sending queue and may include either previously enqueued recipients or, despite its name, discarded recipients (invalid or unprocessed). "InvalidRecipients" is expected to be always empty when sending to all list subscribers or a group. "UnprocessedRecipients" contains a list of recipients that are excluded from sending due to a restriction (e.g. in case of a trial console account or when the rate-limiting described in API use policy is exceeded).

when creating a new email message, any referenced tag or attachment must be created in advance for that list. 

Anchor
stop_a_sending
stop_a_sending
Stop a sending

Use this endpoint to stop a specified sending. It works on scheduled or immediate sendings. It does not change the status of undefined / standby sendings.

You can perform a max 1 request every 30 seconds.

DescriptionStop a sending

HTTP Method

POST

URL


Code Block
POST https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/Email/Sendings/{id_Sending}/Stop


JSON request (example)

none

JSON response (example)

none

Paging and filtering (example)

none

Delete a sending

If you've already stopped the sending, use this endpoint to delete it. You MUST call the Stop a sending endpoint before deleting scheduled or immediate in-progress sendings. A standby sending does not require to be stopped.

You can perform 1 request every 30 seconds max.

DescriptionDelete a sending

HTTP Method

DELETE

URL


Code Block
DELETE https://services.mailup.com/API/v1.1/Rest/ConsoleService.svc/Console/Email/Sendings/{id_Sending}


JSON request (example)

none

JSON response (example)


Expand
titleIf the sending should not be deleted...
200 OK

{
	"IsDeleted": false
}


Expand
titleIf the sending is deleted...
200 OK

{
	"IsDeleted": true
}


Paging and filtering (example)

none