REST Email Marketing API Documentation

DEMOGRAPHICS — ADD

Add a new demographic. If you are using a foreign member table, the column must already exist in your SQL view.

HTTP VERB

POST

URL

/API/Rest/Demographics

ARGUMENTS

columnName The name of the demographic.
dataType The type of data that can be stored in the column
exportWithReports Boolean value of whether this column should be exported with other data for reports.
displayInSearchResults Display this column in the web interface when searching for recipients.

Here are the possible demographic types:
• Boolean: (Two possible choices – Yes/No, True/False, etc.)
• DateTime: (A date and a time, such as the specific date and time a webinar begins)
• Money: (Numbers including decimal points)
• Decimal: (Positive or negative number with up to 4 digits to the right of the period)
• Integer: (Positive or negative numbers without decimals. Numbers up to +-2,147,483,648 are supported)
• String10: Text with up to 10 characters
• String25: Text with up to 25 characters
• String50: Text with up to 50 characters
• String100: Text with up to 100 characters
• String250: Text with up to 250 characters
• Date: (with no time, such as an anniversary)
• Time: (with no date, like the time work begins)
• Char: One character (Such as M/F for gender)

Required permission

CreateEditDemographic

ERRORS

No Permission
That column name already exists
The column does not yet exist in the view used by Symphonie as the foreign member table
Invalid datatype
Database error
Unknown error

RETURNS

Success

EXAMPLE

Add a new demographic.

string message = "{'accountName':'acme', 'login':'ApiUser', 'password':'sdf3w4tw', 'columnName':'age', 'dataType':'integer', 'displayInSearchResults':false, 'exportWithReports':true}";
string url = "http://example.com/api/rest/Demographics";

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/Demographics'
args = {'accountName'=>'acme','login'=>'ApiUser', 'password'=>'sdf3w4tw', 'columnName'=>'age', 'dataType'=>'integer', 'displayInSearchResults'=>false, 'exportWithReports'=>true}
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/Demographics";
args = {'accountName':'acme', 'login':'ApiUser', 'password':'sdf3w4tw', 'columnName':'age', 'dataType':'integer', 'displayInSearchResults':False, 'exportWithReports':True}
headers = {'password':'sfhdf6df5fdy'}
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':'sdf3w4tw', 'columnName':'age', 'dataType':'integer', 'displayInSearchResults':false, 'exportWithReports':true}" http://www.acme.com/api/rest/Demographics

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.