REST Email Marketing API Documentation

CONTENT BLOCKS — CREATE or EDIT

Create a new content block or edit an existing one. Content blocks are designed to store content that can be plugged into other content in a Mailing or Document dynamically. It should be content you expect to reuse, such as a sales person's signature line or the contact information for a retail location. Use a Mailing for content that will be sent one time.

Every Content Block has a language associated with it. You can create the same content, with the same name, in different languages. Then when a Mailing or Document needs to insert content, the one with the matching language will be selected.

The mail merge logic will merge either the text or HTML sections of the Content Block into the Mailing or Document based on where the mail merge tag is found. For example, a mail merge tag in the HTML section will substitute the HTML section from the Content Block.

HTTP VERB

POST

URL

/API/Rest/ContentBlocks

ARGUMENTS

name Up to 25 characters. A name that only administrators will see. Must be unique for the given culture.
text (optional) The text section of the content.
html (optional) The HTML section of the content.
delimiterStart (optional) The delimiter to use to mark the start of a mail merge section.
delimiterEnd (optional) The delimiter to use to mark the end of a mail merge section.
description (optional) A textual description of the Content Block, for your use. Recommended so other administrators can quickly identify the content without relying completely on the name.
culture (optional) The culture of the content. Should be the international standard, like "en-US" or "fr-FR".
replaceExisting A boolean value indicating whether an existing Content Block should be overridden.

Required permission

CreateContentBlocks

ERRORS

No Permission
Invalid content block name
Database error
Unknown error

RETURNS

Success



EXAMPLE

Edit a content block.

string message = "{'accountName':'acme', 'login':'ApiUser', 'password':'sdf3w4tw', 'name':'JunkMe2', 'text':'This is the edited content block text', 'html':'This is the edited <b>HTML<b>', 'culture':'en-US', 'description':'Just a test', 'replaceExisting':true}";
string url = "http://example.com/api/rest/ContentBlocks";

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/ContentBlocks'
args = {'accountName'=>'acme', 'login'=>'ApiUser', 'password'=>'sdf3w4tw', 'name'=>'JunkMe2', 'text'=>'This is the edited content block text', 'html'=>'This is the edited <b>HTML<b>', 'culture'=>'en-US', 'description'=>'Just a test', 'replaceExisting'=>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/ContentBlocks";
args = {'accountName':'acme', 'login':'ApiUser', 'password':'sdf3w4tw', 'name':'JunkMe2', 'text':'This is the edited content block text', 'html':'This is the edited <b>HTML<b>', 'culture':'en-US', 'description':'Just a test', 'replaceExisting':True}
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':'sdf3w4tw', 'name':'JunkMe2', 'text':'This is the edited content block text', 'html':'This is the edited <b>HTML<b>', 'culture':'en-US', 'description':'Just a test', 'replaceExisting':true}" http://www.acme.com/api/rest/ContentBlocks/Create

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.