Wednesday, December 31, 2008

JangoMail Tip: Random Selection of Members

Giving a few subject lines a try before a big mailing? You need a quick and easy way to send to only a random sampling of your list.

JangoMail supports this need, whether you are querying your database directly (Extract from My Database) or selecting members from Groups stored within JangoMail.

The key is to add "order by newid()" to the end of the SQL query you are using to specify criteria for your mailing.

In a JangoMail Group, you would use the Filter and Send tool. From the main Filter and Send screen, Switch to the Advanced Query Editor. Now, you can set your message criteria, and add in the random selection. In the following example, we are selecting 5 random members of the Group, Web Customers.

When the Filter is executed, we will be ready to send to 5 members of this Group.

Sunday, December 21, 2008

Users calling API method SendMassEmail for single recipient campaigns now auto-converted to SendTransactionalEmail

The following email message was sent out this evening to users calling SendMassEmail to send out a large number of single-recipient email messages:


Today we made a change to your account involving how your email campaigns to single recipients are sent via the API. You are currently calling our API method SendMassEmail in succession to send a high volume of single-recipient "transactional" type email messages. Several days ago we launched a new API method, called SendTransactionalEmail, which is specifically designed for sending single-recipient messages. The change we made to your account, forces any calls to SendMassEmail to be converted to SendTransactionalEmail method calls, when the call to SendMassEmail is for a single email recipient only.

There are several reasons why we made this change to your account:

1. The SendMassEmail method has always been designed for sending email campaigns to a group of recipients at once. When calling this method, the system treats the campaign as a campaign going to a group of recipients and does processing involving de-duping the final recipient list, deleting invalid email addresses, assigning sending servers based on internal rule sets, and other steps to generate the final recipient list and personalize each email message. Even single recipient campaigns sent via this method take 30-60 seconds to send due to the pre-processing steps that take place with each email campaign. Additionally, when SendMassEmail is called, all campaign data is stored in your account, including the Subject, HTML Message, and Plain Text Message. Calling SendMassEmail thousands of times takes up a lot of space in our database.

2. The new SendTransactionalEmail method sends messages out over SMTP immediately upon the method call. Now emails will be sent 1-2 seconds after the method call rather than 30-60 seconds after.

3. The new SendTransactionalEmail method doesn't store the full message body in our database, since it sends the emails out right away over SMTP. Therefore overall system performance is greater and less storage is taken when single recipient emails go through this new method.

4. You'll now be able to see better reporting and statistics on single-recipient messages. With each individual call to SendMassEmail, each message shows as its own campaign in Reporting, making it difficult to assess what's happening across all of the messages together. Soon we will have an interface for Reporting on just transactional messages generated via SendTransactionalEmail. You'll be able to group different types of messages (Order confirmations, Welcome messages, Internal notifications, etc.), and see open-tracking and click-tracking statistics per Transactional Message Group.


The technical specification on the new method is here:

Here's a brief FAQ on the change:

1. Why did you set my account to convert calls to SendMassEmail to SendTransactionalEmail instead of letting me make the change in code myself?

We figured it would take our customers a while to make the code change on their own. And we didn't see any disadvantages of forcing the conversion to the new method. Furthermore, for our own benefit, we gain a lot of system preformance and database storage back by having single recipient emails go through SendTransactionalEmail rather than SendMassEmail.

2. What if I'm using SendMassEmail to send to Groups or recipients from a live web database?

Calls to SendMassEmail with Groups or live datasets as the recipients will not be altered. Only calls to SendMassEmail where a single recipient is specified are converted to SendTransactionalEmail.

3. Even though you're converting my method calls for me, should I still make the change in my code to SendTransactionalEmail?

Yes, you should. If you call this method directly, you'll be able to take advantage of Grouping and other features specific to this method.

4. Do I lose any tracking by using SendTransactionalEmail?

No, messages sent with SendTransactionalEmail still have open tracking and click tracking capabilities. The recipient is still checked against the unsubscribe and bounce lists before the email is sent. And the messages are still signed with DomainKeys and DKIM, provided your account has been setup to sign messages.

5. What if I want you to undo the change on my account and let me use SendMassEmail as before?

Sure, just let us know. We can't think of any benefit to doing so, but there are so many subtleties and different ways our customers use JangoMail, that it's possible we didn't think of everything. Just reply to this email or get in touch with us if you have a reason why you don't want us to force the SendTransactionalEmail method on you.

6. I don't see any of my messages in Reporting. How do I know my messages are being sent?

The reporting interface for transactional messages is still being built. It should be live under the "Reporting" tab by mid-this week. If you need reporting statistics beforehand, just let us know and we can manually query our database to show you what has been sent/opened/clicked.

7. I'm in the Sender Score Certified program. Will email messages sent via SendTransactionalEmail be sent through SSC-approved senders?

If you are in the SSC program, then yes, just like a regular email campaign, transactional email messages will also be sent through SSC approved senders.

One important difference with unsubscribes/bounces:

When calling SendMassEmail, if sending to an email address on your account's unsubscribe or bounce list, the method call is successful and during pre-processing that email address is removed from your final recipient list. When using SendMassEmail to send to single recipients, this would result in a campaign with 0 recipients.

When calling SendTransactionalEmail, an exception is thrown if you send to an email address on your account's unsubscribe or bounce list. Please be aware of this when writing your code or modifying your code to use SendTransactionalEmail instead of SendMassEmail. This change also is in effect for the accounts which we've put in the auto-conversion from SendMassEmail to SendTransactionalEmail.

Thursday, December 18, 2008

New API Method - SendTransactionalEmail

JangoMail now has a method designed to help API users who are sending multiple emails to single recipients more smoothly. SendTransactionalEmail is designed for users who have JangoMail running as the engine behind their applications that send individually triggered messages to single recipients.

The new method allows for rapid processing of these single emails, while retaining full tracking for the mailings (Opens, Clicks, Unsubscribes, and Bounces).

We are completing our testing phase now. The reporting module for tracking transactional emails is still a few days away, but we're very excited with our early results and hope you will be too.

What does it look like? The input parameters are very similar to SendMassEmail. The key difference is that there is a "ToEmailAddress" parameter which expects a single email address.

The full method is at: Detailed documentation is at:

For a full reference on the API, visit the API home page:

Tuesday, December 16, 2008

Bug Fix: Member Counts Returned to Main Groups Page

After completing some recent enhancements to the Groups section, JangoMail once again shows counts of Group members on the main Groups landing page.

Groups will initially show as "Counting" while this process takes place, and will display their respective counts as the tallies come in from the database.

Update to Image Library: Host TXT, PPT, and PPS Files

Your JangoMail Image Library will now accept 3 additional file types for upload. Now you can upload files with .TXT, .PPT, and .PPS extensions for hosting with JangoMail.

Once stored, you may create links in your messages that reference the hosted files much as you would a PDF or other non-image file.

JPG and GIF files remain the only image file types that are recognized by the HTML Editor's Insert Image function because they are the file types that are viewable across most HTML-capable e-mail clients.

Other file types are accepted into the library for hosting. Our tutorial on linking to hosted files (PDFs and others) can be downloaded here.

Site Enhancement: New Features Page

Curious about everything JangoMail can do? Want to see videos demonstrating our features? We've just updated our main Features page with a more comprehensive list of our capabilities, video demonstrations, and enhanced pop-ups.

Make sure you stop by and ask us about anything you'd like to try: