REST Email Marketing API Documentation

Workflows — Add

Add multiple recipients into an existing workflow

HTTP VERB

Post

URL

/API/Rest/Workflows/Add

ARGUMENTS

workflowName The name of the workflow.
emailAddresses An array of email addresses.
instanceData (Optional) A string dictionary of keys and values to use as instance data for the workflow. Each recipient receives a copy of the instance data.

Required permission

CreateEditRecipientWorkflow

ERRORS

No Permission
Invalid workflow name
Workflow must be in the testing or running status
Too many API calls
Database error
Unknown error

RETURNS

Any errors are returned in an array of structures with the following fields. Not being listed means success.

notInDatabase Invalid recipient
duplicateInFile The The email address was duplicated in the input
currentlyInWorkflow The recipient is already in the workflow and it doesn't allow duplicates
previouslyInWorkflow The recipient was previously in the workflow and the workflow doesn't allow re-entry

{"notInDatabase":[],"duplicateInFile":[],"currentlyInWorkflow":[],"previouslyInWorkflow":[]}

EXAMPLE

Add multiple recipient into a workflow.

string message = "{'accountName':'acme','login':'ApiUser', 'password':'sdve4t3gfd', 'workflowName':'Gift Cards', 'emailAddresses':['joe@example.com', 'ralph@aol.com', 'paul@aol.com']}";
string url = "http://example.com/api/rest/Workflows/Add";
								
try
{
	System.Net.HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
	request.Method = "POST";
	request.ContentType = "application/json";
	request.ContentLength = message.Length;
	using (Stream webStream = request.GetRequestStream())
		using (StreamWriter requestWriter = new StreamWriter(webStream, System.Text.Encoding.ASCII))
			requestWriter.Write(message);
								
	System.Net.WebResponse webResponse = request.GetResponse();
	using (Stream webStream = webResponse.GetResponseStream())
		using (StreamReader responseReader = new StreamReader(webStream))
			Console.Out.WriteLine(responseReader.ReadToEnd());
}
catch (Exception e)
{
	System.Diagnostics.Debug.Fail(e.Message);
}
							
# encoding: utf-8
require 'rest-client'
require 'json'
							
url = 'http://www.acme.com/api/rest/Workflows/Add'
args = {'accountName'=>'acme', 'login'=>'ApiUser', 
'password'=>'sdf3w4tw','workflowName'=>'Gift Cards', 'emailAddresses'=>['joe@example.com', 'ralph@aol.com', 'paul@aol.com']}
response = RestClient.post(url, args.to_json, :content_type => "application/json;charset=utf-8")
puts response	
							
import requests
url = "http://www.example.com/api/rest/Workflows/Add";
args = {'accountName':'acme','login':'ApiUser', 'password':'f334f3fg3', 'workflowName':'Gift Cards', 'emailAddresses':['joe@example.com', 'ralph@aol.com', 'paul@aol.com']}
headers = {'Content-Type': 'application/json'}
resp = requests.post(url, json=args, headers=headers)
if resp.status_code == 200:
	print resp.text
							

curl -X POST -H "Content-Type: application/json" -d "{'accountName':'acme','login':'ApiUser', 'password':'f334f3fg3', 'workflowName':'Gift Cards', 'emailAddresses':['joe@example.com', 'ralph@aol.com', 'paul@aol.com']}" http://www.example.com/API/Rest/Workflows/Add

As a user of Goolara Symphonie, the REST API is free and included in the latest version of the software. If you have any questions about using Symphonie’s REST API, feel free to contact us.