Page tree
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 16 Next »


This part of the document describes the different ways through which an external system can use MailUp to send email messages with dynamic contents: this way, it is possible to take advantage of the MailUp reputation and sending infrastructure to avoid spam filters and check both send status and the archive of sent messages.


Transactional emails


The dynamic fields allow to send single email messages containing some personalized content, through the same process MailUp uses for confirmation request emails and subscription confirmation emails. These messages - also called transactional emails - have a fixed structure with some personalized fields: for example, they can be used to send the user a password, a notice, an order confirmation, and so on.

MailUp can manage the whole process automatically, so:

  • messages are sent very quickly, thanks to an oversized infrastructure that guarantees immediate sending (except in case of grey listing on destination servers). There are no bandwidth restrictions here and a dedicated channel is used for sending (no queue-related delay). Anyway, this functionality should not overused, not to lose these benefits 
  • automatic processes can be activated following actions that users might have performed.

MailUp can send transactional emails in two ways, as described below:. 

  • MailUp sends a confirmation message to subscribers through an automatic procedure. Subscription can take place in two ways:
    • Standard APIs (subscribe.asp, subscribe.aspx, xmlsubscribe.aspx)
    • Import Web Service (WS_MailupImport)

The content of the subscription confirmation message can be edited, so to make it correspond to to the template of the message one wants to send (there is only one confirmation message for each list, but countless lists are available). Confirmation message can be personalized with the recipient's personal data by using dynamic fields (up to 42 available when purchasing the Marketing+ package).
These emails can also contain a link triggering an action (opening of a messages page and automatic sending of another email), through the use of SUB link. A specific list can be created for the purpose, and each list can have a different sender address. 

  • A web service allow the immediate sending of a single message. This procedure is much more flexible, but it is paramount to follow the instructions provided in the section describing this function.

The method SendSingleNewsletter() allows to send an email message with the indication of subject, recipients and contents. 


When using SendSingleNewsletter(), the best practice is to use predefined messages with dynamic sections, and not to create a brand new newsletter for each call. In this case MailUp would keep on using space to store the new contents, thus making performance worse


Email messages sent to groups of users


This section describes the different ways through which MailUp can be used to send email messages to groups and lists of users without accessing the administration console. The methods described above suit to small automations, but if the goal is to send huge amounts of newsletters or DEMs the best practice to be followed is described below.


Standard Web Services


Some possible scenarios are presented here - with the indication of the web services to be used - as examples of frequent cases. This is not an exhaustive view of all the possibilities anyway.

In the following examples the aspects regarding the authentication to web services are not approached. WS_MailUpImport web service's authentication methods are different from the other web services. Please refer to the related documentation for details.

Example 1
Customer wants to send a message to a group of users and both the message and the recipients list are already available in the MailUp console.

  1. If the message has to be sent to all the recipients in a list the suggested method is SendNewsletter(). Parameters "send_to = ALL" , list ID, message ID and time and date of sending must be specified. Message and list IDs can be found at the page Settings > Table codes  in the MailUp console, or using GetLists() and GetNewsletters() methods.
  2. If the recipients are just some groups in a list, when calling the SendNewsletter() method group IDs must be specified as well.
  3. If the users share data that can be extracted using one of MailUp filters (personal data, activity and geolocation filters, available in the Marketing+ package) when calling the SendNewsletter() method the filter to be applied must be indicated as well. Filters can be used in addition or as an alternative to groups. The great advantage of using them lies in the fact that all the users matching a certain condition are automatically included in the filter results, whereas a user must be inserted into a group for group membership.


Do not use SendSingleNewsletter() in place of SendNewsletter(): the first one has to be used only for transactional emails, as described above

Example 2
Similar to Example 1, but in this case a group of recipients has to be imported as well. Some of these recipients might be already subscribed in MailUp due to a previous signup to a newsletter, some others might be new subscribers.

  1. Through WS_MailUpImport methods a new temporary group is created (CreateGroup(groupName)) and a group of recipients is imported to it (StartImportProcess(groupID, recipients,…)). This operation may last several minutes, depending on how huge this group is, and it can be monitored using GetProcessDetails(). Once the import is finished, SendNewsletter(groupID) method can be used to perform the sending. At the end of the process the group which was created for the purpose must be deleted using DeleteGroup().
  2. The procedure described at (1) is less effective when there are huge amounts of data to be imported, so it may be useful to use an alternative procedure that provides for a "bulk" import from a file following an input via web service. SendMessageNL(fileName, listId, messageId, timeDateSending, ) method allows to schedule a sending for the desired time and date, then asynchronously executes the following operations
    1. Creation of a temporary group
    2. Import to this of the recipients indicated in the file
    3. Sending of the message at the scheduled time and date
    4. Deletion of the temporary group


The procedure described here can be used to send the imported recipients messages using the email channel only

Example 3
It may be necessary to import to MailUp a message created using an external system. CreateNewsletters() method allows the creation of a new message where the parameter to be passed is the body of the message (html, text or URL that points to the html file).
It is also possible to use the SendNewsletterFast() method, which conveys to a single call the information that can be drawn from the calls to CreateNewsletters() e SendNewsletter() methods.

Methods creating a new message instead of using an existing one should not be overused. A large number of messages created by the web services (e.g. dozens of messages a day) might cause a system overload and worse performances on the long term

Example 4
Most customers need to track campaign results. Considering that, when the same message is sent repeatedly (regardless of the number of recipients), the export of statistics via batch cannot associate the clicks to the corresponding mailing, making a copy of the message can be very useful so to have the detail of each sending. CloneMessage() method allows to clone a message: once the copy has been created the sending can be performed as described above. 

When using web service it is not possible to manage the import of external campaign codes, an operation that requires an import via batch.




La modalità Batch FTP ZIP è un'integrazione speciale che permette l'importazione batch da un file zip che contiene diversi file contenenti l'elenco dei destinatari, il messaggio html da inviare e le impostazioni (data, ora ecc. ) di invio.
Questa modalità è un altro modo con cui è possibile inviare email con MailUp senza accedere all'applicazione web.
L'integrazione Batch FTP ZIP non è compresa nell'offerta standard di MailUp ed è dettagliata nel capitolo 9.1 dedicato alle integrazioni speciali. 


Web Service for massive mailings


Una console MailUp può essere configurata per eseguire, tramite web service, invii massivi di contenuti fortemente personalizzati. Il chiamante invoca un apposito metodo del web service passando l'indirizzo email del destinatario ed il contenuto del messaggio, MailUp accumula le richieste e a cadenza regolare esegue un invio a blocchi dei messaggi accumulati. Questo sistema è particolarmente efficiente quando si devono spedire grossi volumi di email rispettando vincoli temporali sui tempi di consegna complessivi.
Il sistema offre la possibilità di:

  • Fornire una capacità di invio più elevata dei web service tradizionali (la velocità dipende comunque dalla banda)
  • Fornire la capacità di gestire milioni di richieste al giorno, garantendo un tempo massimo di consegna a partire dal ricevimento della richiesta Purchè la banda acquistata sia adeguata al volume, ai tempi e alla dimensione in KB dei messaggi inviati
  • Risolvere i problemi che caratterizzano i web service classici quando ogni richiesta comporta la creazione di un nuovo messaggio
  • Inviare email completamente distinte tra un destinatario e l'altro
  • Specificare una versione testuale del messaggio diversa da quella html


  • La soluzione proposta è stata studiata per esigenze in cui la necessità di accedere alla console MailUp è molto limitata, alcune funzioni statistiche o di invio potrebbero non essere disponibili.
  • La console per invii massivi è nata come spin-off della versione 7.3 di MailUp ma non segue lo stesso piano di aggiornamenti della console MailUp standard, è quindi possibile che le funzioni più recenti La versione 7.3 è stata rilasciata alla fine del 2010 della console standard non siano disponibili sulla versione dedicata agli invii massivi.
  • Tutti i messaggi inviati sono registrati come se appartenessero alla stessa newsletter. Ne consegue che i risultati statistici offerti si limitano alle statistiche per messaggio filtrate per data
  • La soluzione offerta non è adatta all'invio di messaggi singoli in tempo reale (in fase di configurazione si può ridure la latenza fino ad un minuto, anche se in base all'esperienza la configurazione ottimale prevede latenze di 15-30 minuti)
  • Al fine di garantire la massima efficienza è necessario eseguire operazioni periodiche di pulizia dei dati non più necessari, il sistema non è quindi adatto ad un funzionamento intensivo 24x7, tuttavia il problema è aggirabile distribuendo le chiamate ai web service su due o più console MailUp.
  • No labels