REST Documentation

You are reading the REST API Docs. Click here for the HTTP API Docs.

API calls can be made from nearly all popular programming languages. Through our API you can access many different features of the Ez Texting platform. Browse them below and check out the list of available APIs and their parameters.

Looking for information about receiving text messages?
View the documentation for our two incoming message APIs.

Getting started? Check out our code examples.

Sending SMS/MMS Messages

Sends SMS/MMS messages via a shared short code to a single phone number or an array of phone numbers.

URL

https://app.eztexting.com/sending/messages?format=format

Format & Method

Format can be either XML or JSON. HTTP Method must be POST.

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
PhoneNumbers (Optional) Array of 10 digit phone number to send message to
Groups (Optional) Groups to send message to; if you don't include groups, you must specify phone numbers to send message to
Subject (Optional) The subject of your message. Maximum 13 characters.
Message (Required) The body of your message
StampToSend (Optional) Time to send a scheduled message (should be a Unix timestamp)
MessageTypeID (Optional) Message delivery method: set to 1 to send via Express delivery method; set to 2 to send via Standard delivery method; set to 3 to send via MMS delivery method; if you leave this parameter out, your message will be sent via Express delivery method.
FileID (Optional) ID of media file to include (for MMS only)

Note Values must be properly URL encoded.

Note For SMS (MessageTypeID set to 1 or 2) parameter "Message" is required.

Note If FileID is set for MMS (MessageTypeID set to 3) message will include media file. If no FileID is set for MMS (MessageTypeID set to 3) parameter "Message" is required. Long text will be sent in such case.

Return Values

ID Unique ID referencing the message
Subject Subject of the message
Message Body of the message
MessageTypeID Message delivery method (1 - express, 2 - standard, 3 - mms)
RecipientsCount Number of intended recipients. Please note: This includes globally opted out numbers.
Credits Number of credits charged for the message
StampToSend Date and time message will be sent
PhoneNumbers Array of phone numbers to receive the message
LocalOptOuts Array of locally opted-out phone numbers
GlobalOptOuts Array of globally opted-out phone numbers
Groups Array of groups to receive the message
FileID ID of media file (for MMS only)

Note sages sent via Standard delivery cannot exceed 130 characters combined subject and message field, via Express delivery - 160 characters (136 characters in Canada) combined subject and message field. Subjects are always limited to 13 characters

Note The list of allowed characters for messages and subjects is: a-z, A-Z, 0-9 and these special characters: .,:;!?()~=+-_\/@$#&%'"

Note The following characters count as two characters when used: \r \n

Note To opt back in a globally opted out number please text Your Keyword to your assigned shared short code using that phone.

HTTP Status Codes

201 Success - A new message has been scheduled for delivery
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>403</Code>
	<Errors>
		<Error>PhoneNumbers: '(123)45-67' contains characters which are not digits</Error>
		<Error>Subject: Your subject must be under 13 characters.</Error>
		<Error>Message: Your message contains characters that are not supported.</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example And Response (SMS)

curl -d 'User=winnie&Password=the-pooh&PhoneNumbers[]=2123456785&PhoneNumbers[]=2123456786&PhoneNumbers[]=2123456787&PhoneNumbers[]=2123456788&Groups[]=honey lovers&Subject=From Winnie&Message=I am a Bear of Very Little Brain, and long words bother me&StampToSend=1305582245' https://app.eztexting.com/sending/messages?format=xml
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Success</Status>
	<Code>201</Code>
	<Entry>
		<ID>6419</ID>
		<Subject>From Winnie</Subject>
		<Message>I am a Bear of Very Little Brain, and long words bother me</Message>
		<MessageTypeID>1</MessageTypeID>
		<RecipientsCount>3</RecipientsCount>
		<Credits>6</Credits>
		<StampToSend>05-16-2011 5:44 PM</StampToSend>
		<PhoneNumbers>
			<PhoneNumber>2123456787</PhoneNumber>
			<PhoneNumber>2123456788</PhoneNumber>
		</PhoneNumbers>
		<LocalOptOuts>
			<PhoneNumber>2123456786</PhoneNumber>
		</LocalOptOuts>
		<GlobalOptOuts>
			<PhoneNumber>2123456785</PhoneNumber>
		</GlobalOptOuts>
		<Groups>
			<Group>Honey lovers</Group>
		</Groups>
	</Entry>
</Response>

XML Example And Response (MMS)

curl -d 'User=winnie&Password=the-pooh&PhoneNumbers[]=2123456788&FileID=26&StampToSend=1305582245' https://app.eztexting.com/sending/messages?format=xml
<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Status>Success</Status>
    <Code>201</Code>
    <Entry>
        <ID>64456</ID>
        <Subject />
        <Message />
        <MessageTypeID>3</MessageTypeID>
        <RecipientsCount>1</RecipientsCount>
        <Credits>2</Credits>
        <StampToSend>05-16-2011 5:44 PM</StampToSend>
        <FileID>26</FileID>
        <PhoneNumbers>
            <PhoneNumber>2123456788</PhoneNumber>
        </PhoneNumbers>
        <Groups />
    </Entry>
</Response>

XML Example And Response (MMS - Long Text)

curl -d 'User=winnie&Password=the-pooh&PhoneNumbers[]=2123456788&Message=This...whatever-it-was...has now been joined by another...whatever-it-is... and they are now proceeding in company. Would you mind coming with me, Piglet, in case they turn out to be Hostile Animals?&StampToSend=1305582245' https://app.eztexting.com/sending/messages?format=xml
					
<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Status>Success</Status>
    <Code>201</Code>
    <Entry>
        <ID>64457</ID>
        <Subject />
        <Message>This...whatever-it-was...has now been joined by another...whatever-it-is... and they are now proceeding in company. Would you mind coming with me, Piglet, in case they turn out to be Hostile Animals?</Message>
        <MessageTypeID>3</MessageTypeID>
        <RecipientsCount>1</RecipientsCount>
        <Credits>2</Credits>
        <StampToSend>05-16-2011 5:44 PM</StampToSend>
        <PhoneNumbers>
            <PhoneNumber>2123456788</PhoneNumber>
        </PhoneNumbers>
        <Groups />
    </Entry>
</Response>

JSON Example And Response (SMS):

curl -d 'User=winnie&Password=the-pooh&PhoneNumbers[]=2123456785&PhoneNumbers[]=2123456786&PhoneNumbers[]=2123456787&PhoneNumbers[]=2123456788&Groups[]=honey lovers&Subject=From Winnie&Message=I am a Bear of Very Little Brain, and long words bother me&StampToSend=1305582245' https://app.eztexting.com/sending/messages?format=json
					
{
	"Response":{
		"Status":"Success",
		"Code":201,
		"Entry":{
			"ID":6417853,
			"Subject":"From Winnie",
			"Message":"I am a Bear of Very Little Brain, and long words bother me",
			"MessageTypeID":1,
			"RecipientsCount":3,
			"Credits":6,
			"StampToSend":"05-16-2011 5:44 PM",
			"PhoneNumbers":[
			"2123456787",
			"2123456788"
			],
			"LocalOptOuts":[
			"2123456786"
			],
			"GlobalOptOuts":[
			"2123456785"
			],
			"Groups":[
			"Honey lovers"
			]
		}
	}
}

JSON Example And Response (MMS):

curl -d 'User=winnie&Password=the-pooh&PhoneNumbers[]=2123456788&FileID=26&StampToSend=1305582245' https://app.eztexting.com/sending/messages?format=json
					
{
     "Response":{
        "Status":"Success",
        "Code":201,
        "Entry":{
	"ID":64458,
	"Subject":"",
	"Message":"",
	"MessageTypeID":3,
	"RecipientsCount":1,
	"Credits":2,
	"StampToSend":"05-16-2011 5:44 PM",
	"FileID":26,
	"PhoneNumbers":[
		"2123456788"
	],
	"Groups":[]
       }
    }
}

XML Example And Response (MMS - Long Text):

curl -d 'User=winnie&Password=the-pooh&PhoneNumbers[]=2123456788&Message=This...whatever-it-was...has now been joined by another...whatever-it-is... and they are now proceeding in company. Would you mind coming with me, Piglet, in case they turn out to be Hostile Animals?&StampToSend=1305582245' https://app.eztexting.com/sending/messages?format=xml
{
     "Response":{
        "Status":"Success",
        "Code":201,
        "Entry":{
	"ID":64459,
	"Subject":"",
	"Message":"This...whatever-it-was...has now been joined by another...whatever-it-	is... and they are now proceeding in company. Would you mind coming with me, 	Piglet, in case they turn out to be Hostile 	Animals?",
	"MessageTypeID":3,
	"RecipientsCount":1,
	"Credits":2,
	"StampToSend":"05-16-2011 5:44 PM",
	"PhoneNumbers":[
		"2123456788"
	],
	"Groups":[]
       }
    }
}

Back to table of contents

Get a report for specific delivery status of a message you have sent.

URL

https://app.eztexting.com/sending/reports/ID/?format=format

Format & Method

Format can be either XML or JSON. HTTP Method must be GET.

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
ID (Required) ID of the message to show

Return values

Array of possible results grouped by messages statuses:

  • "Sent - Awaiting Confirmation"
  • "Not Sent - No Credits"
  • "Not Sent - Opted Out"
  • "Bounced"
  • "Delivered"

Each status section has:

  • Count - amount of messages with specified status
  • Percentage - percentage of specified status from total messages count

HTTP Status Codes

201 Success - A new message has been scheduled for delivery
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Status>Failure</Status>
    <Code>401</Code>
    <Errors>
        <Error>Authorization Required</Error>
    </Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Status>Failure</Status>
    <Code>404</Code>
    <Errors>
        <Error>Sorry, nothing was found</Error>
    </Errors>
</Response>

Successful Call & Response Samples

XML Example & Response

curl 'https://app.eztexting.com/sending/reports/123?format=xml&User=winnie&Password=the-pooh'
<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Status>Success</Status>
    <Code>200</Code>
    <Entry>
        <Delivered>
            <Count>1</Count>
            <Percentage>100.00</Percentage>
        </Delivered>
    </Entry>
</Response>

JSON Example & Response

curl 'https://app.eztexting.com/sending/reports/123?format=json&User=winnie&Password=the-pooh'
{"Response":
  {"Status":"Success","Code":200,"Entry":
    {"Delivered":
      {"Count":1,"Percentage":"100.00"
      }
    }
  }
}

Back to table of contents

Get a report for specific delivery status of a message you have sent and the phone numbers for that delivery type.

URL

https://app.eztexting.com/sending/reports/ID/view-details/?format=format...

Format & Method

Format can be either XML or JSON. HTTP Method must be GET.

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
ID (Required) ID of the message to show
Status (Required) Message delivery status: "na", "delivered", "no_credits", "bounced", "opted_out"

Return values

Array of possible phone numbers which have given status.

HTTP Status Codes

201 Success - A new message has been scheduled for delivery
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Status>Failure</Status>
    <Code>401</Code>
    <Errors>
        <Error>Authorization Required</Error>
    </Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Status>Failure</Status>
    <Code>404</Code>
    <Errors>
        <Error>Sorry, nothing was found</Error>
    </Errors>
</Response>

Successful Call & Response Samples

XML Example & Response

curl 'https://app.eztexting.com/sending/reports/123/view-details?format=xml&status=delivered&User=winnie&Password=the-pooh'
<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Status>Success</Status>
    <Code>200</Code>
    <Entries>
        <Entry>3312943691</Entry>
    </Entries>
</Response>

JSON Example & Response

curl 'https://app.eztexting.com/sending/reports/123/view-details?format=json&status=delivered&User=winnie&Password=the-pooh'
{"Response":
  {"Status":"Success",
    "Code":200,
    "Entries":[3312943691]
  }
}

Back to table of contents

Managing Your Inbox Messages

Delete an incoming text message in your Ez Texting Inbox

URL

https://app.eztexting.com/incoming-messages/ID?format=format

Format & Method

Format can be either XML or JSON, DELETE (or POST with the added parameter _method=DELETE)

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
ID (Required) ID of the incoming message to delete

Return Values

None

HTTP Status Codes

204 No Content - Resource was deleted
401 Unauthorized - Authentication credentials are missing or incorrect
404 Does Not Exist - Message was not found. Please check parameters.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>404</Code>
	<Errors>
		<Error>Sorry, nothing was found</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example

curl -X DELETE -v 'https://app.eztexting.com/incoming-messages/123?format=xml&User=winnie&Password=the-pooh'
HTTP/1.1 204 No Content
Date: Wed, 25 Jan 2012 16:13:51 GMT
Content-Length: 0
Content-Type: application/xml

JSON Example

curl -X DELETE -v 'https://app.eztexting.com/incoming-messages/123?format=json&User=winnie&Password=the-pooh'
HTTP/1.1 204 No Content
Date: Wed, 25 Jan 2012 16:15:19 GMT
Content-Length: 0
Content-Type: application/json

Back to table of contents

Get all incoming text messages in your Ez Texting Inbox

URL

https://app.eztexting.com/incoming-messages?format=format

Format & Method

Format can be either XML or JSON
HTTP Method must be GET

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
FolderID (Optional) Get messages from the selected folder. If FolderID is not given then request will return messages in your Inbox and all folders.
Search (Optional) Get messages which contain selected text or which are sent from selected phone number.
Filter (optional) Type of messages to retrieve. Supported values: SMS,MMS

Sorting

sortBy (Optional) Property to sort by. Available values: ReceivedOn, PhoneNumber, Message
sortDir (Optional) Direction of sorting. Available values: asc, desc

Pagination

itemsPerPage (Optional) Number of results to retrieve. By default, 10 most recent incoming messages are retrieved. Supported values: 10, 20, 50, 100, or 200
page (Optional) Page of results to retrieve. 1st page is returned by default

Return Values

ID Unique ID referencing the message
PhoneNumber Phone number of the sender
Subject Subject of the message
Message Message Body
Type Type of incoming message. Values: SMS, MMS
Files Url paths to media files. Only for MMS
New If Messsage is New (Unread in Ez Texting Web App)
FolderID ID of the folder which contains message. If FolderID is not present then message is located in Inbox.
ContactID ID of the Contact who sent the message. If ContactID is not present then the contact doesn't exist.
ReceivedOn Date when message was received

HTTP Status Codes

200 OK - Success
401 Unauthorized - Authentication credentials are missing or incorrect
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example

curl 'https://app.eztexting.com/incoming-messages?format=xml&User=winnie&Password=the-pooh'
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Success</Status>
	<Code>200</Code>
	<Entries>
		<Entry>
			<Type>SMS</Type>
			<ID>123</ID>
			<PhoneNumber>3312943691</PhoneNumber>
			<Subject />
			<Message>test</Message>
			<New>0</New>
			<FolderID>13</FolderID>
			<ContactID />
			<ReceivedOn>10-04-2012 9:06 AM</ReceivedOn>
		</Entry>
		<Entry>
			<Type>MMS</Type>
			<ID>124</ID>
			<PhoneNumber>5512943691</PhoneNumber>
			<Subject />
			<Message>test 2</Message>
			<New>1</New>
			<FolderID />
			<ContactID>506ae688734fad2125000001</ContactID>
			<ReceivedOn>10-04-2012 9:06 AM</ReceivedOn>
			<Files>
				<File>
				https://eztxting.s3.amazonaws.com/1432133919.jpeg
				</File>
				<File>
				https://eztxting.s3.amazonaws.com/1432133920.jpeg
				</File>
			</Files>
		</Entry>
	</Entries>
</Response>

JSON Example

curl 'https://app.eztexting.com/incoming-messages?format=json&User=winnie&Password=the-pooh'
{
	"Response":{
		"Status":"Success",
		"Code":200,
		"Entries":[
			{
				"Type":"SMS",
				"ID":123,
				"PhoneNumber":"3312943691",
				"Subject":"",
				"Message":"test",
				"New":"0",
				"FolderID":"13",
				"ContactID":"",
				"ReceivedOn":"10-04-2012 9:06 AM"
			},
			{
				"Type":"MMS",
				"ID":124,
				"PhoneNumber":"5512943691",
				"Subject":"",
				"Message":"test 2",
				"New":"1",
				"FolderID":"",
				"ContactID":"506ae688734fad2125000001",
				"ReceivedOn":"10-04-2012 9:06 AM"
				"Files":[
					"https://eztxting.s3.amazonaws.com/1432133919.jpeg",
					"https://eztxting.s3.amazonaws.com/1432133920.jpeg"
				]
			}
		]
	}
}

Back to table of contents

Get a single incoming text messages in your Ez Texting Inbox

URL

https://app.eztexting.com/incoming-messages/ID?format=format

Format & Method

Format can be either XML or JSON
HTTP Method must be GET

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
ID (Required) ID of the incoming message to retrieve

Return Values

ID Unique ID referencing the message
PhoneNumber Phone number of the sender
Subject Subject of the message
Message Message Body
Type Type of incoming message. Values: SMS, MMS
Files Url paths to media files. Only for MMS
New If Messsage is New (Unread in Ez Texting Web App)
FolderID ID of the folder which contains message. If FolderID is not present then message is located in Inbox.
ContactID ID of the Contact who sent the message. If ContactID is not present then the contact doesn't exist.
ReceivedOn Date when message was received

HTTP Status Codes

200 OK - Success
401 Unauthorized - Authentication credentials are missing or incorrect
404 Does Not Exist - Message was not found. Please check parameters.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>404</Code>
	<Errors>
		<Error>Sorry, nothing was found</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example (SMS)

curl 'https://app.eztexting.com/incoming-messages/123?format=xml&User=winnie&Password=the-pooh'
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Success</Status>
	<Code>200</Code>
	<Entry>
		<Type>SMS</Type>
		<ID>123</ID>
		<PhoneNumber>3312943691</PhoneNumber>
		<Subject />
		<Message>test</Message>
		<New>0</New>
		<FolderID>13</FolderID>
		<ContactID />
		<ReceivedOn>10-04-2012 9:06 AM</ReceivedOn>
	</Entry>
</Response>

XML Example (MMS)

curl 'https://app.eztexting.com/incoming-messages/124?format=xml&User=winnie&Password=the-pooh'
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Success</Status>
	<Code>200</Code>
	<Entry>
			<Type>MMS</Type>
			<ID>124</ID>
			<PhoneNumber>5512943691</PhoneNumber>
			<Subject />
			<Message>test 2</Message>
			<New>1</New>
			<FolderID />
			<ContactID>506ae688734fad2125000001</ContactID>
			<ReceivedOn>10-04-2012 9:06 AM</ReceivedOn>
			<Files>
				<File>
				https://eztxting.s3.amazonaws.com/1432133919.jpeg
				</File>
				<File>
				https://eztxting.s3.amazonaws.com/1432133920.jpeg
				</File>
			</Files>
	</Entry>
</Response>

JSON Example (SMS)

curl 'https://app.eztexting.com/incoming-messages/123?format=json&User=winnie&Password=the-pooh'
{
	"Response":{
		"Status":"Success",
		"Code":200,
		"Entry": {
			"TYPE":SMS,
			"ID":123,
			"PhoneNumber":"3312943691",
			"Subject":"",
			"Message":"test",
			"New":"0",
			"FolderID":"13",
			"ContactID":"",
			"ReceivedOn":"10-04-2012 9:06 AM"
		}
	}
}

JSON Example (MMS)

curl 'https://app.eztexting.com/incoming-messages/124?format=json&User=winnie&Password=the-pooh'
{
	"Response":{
		"Status":"Success",
		"Code":200,
		"Entry": {
			"Type":"MMS",
			"ID":124,
			"PhoneNumber":"5512943691",
			"Subject":"",
			"Message":"test 2",
			"New":"1",
			"FolderID":"",
			"ContactID":"506ae688734fad2125000001",
			"ReceivedOn":"10-04-2012 9:06 AM",
			"Files":[
				"https://eztxting.s3.amazonaws.com/1432133919.jpeg",					"https://eztxting.s3.amazonaws.com/1432133920.jpeg"
			]
		}
	}
}

Back to table of contents

Moves an incoming text message in your Ez Texting Inbox to a specified folder.

Note: You may include multiple Message IDs to move multiple messages to same folder in a single API call.

URL

https://app.eztexting.com/incoming-messages/?format=format&_method=move-...

Format & Method

POST with the added parameter _method=move-to-folder

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
ID (Required) ID of the incoming message to move
FolderID (Required) ID of the folder you want to move message(s) to

Return Values

None

HTTP Status Codes

200 OK - Success
400 Bad Request - Request is not valid. An accompanying error message explains why.
401 Unauthorized -Authentication credentials are missing or incorrect
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>400</Code>
	<Errors>
		<Error>Sorry, wrong FolderID parameter</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example

curl -d 'User=winnie&Password=the-pooh&ID[]=1&ID[]=2&FolderID=57&_method=move-to-folder' https://app.eztexting.com/incoming-messages?format=xml
HTTP/1.1 200 OK
Date: Wed, 25 Jan 2012 16:13:51 GMT
Content-Length: 0
Content-Type: application/xml

JSON Example

curl -d 'User=winnie&Password=the-pooh&ID[]=1&ID[]=2&FolderID=57&_method=move-to-folder' https://app.eztexting.com/incoming-messages?format=json
HTTP/1.1 200 OK
Date: Wed, 25 Jan 2012 16:13:51 GMT
Content-Length: 0
Content-Type: application/json

Back to table of contents

Create a Folder in your Ez Texting Inbox

URL

https://app.eztexting.com/messages-folders?format=format

Format & Method

Format can be either XML or JSON
HTTP Method must be POST

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
Name (Required) Name of folder to create

Return Values

ID Unique ID referencing the folder

HTTP Status Codes

201 Created - Resource was deleted
400 Bad Request - Request is not valid. An accompanying error message explains why.
401 Unauthorized - Authentication credentials are missing or incorrect
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>400</Code>
	<Errors>
		<Error>Missing folder name</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example

curl -d 'User=winnie&Password=the-pooh&Name=Customers' https://app.eztexting.com/messages-folders?format=xml
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Success</Status>
	<Code>201</Code>
	<Entry>
		<ID>123</ID>
	</Entry>
</Response>

JSON Example

curl -d 'User=winnie&Password=the-pooh&Name=Customers' https://app.eztexting.com/messages-folders?format=json
{
	"Response":{
		"Status":"Success",
		"Code":201,
		"Entry":{
			"ID":123,
		}
	}
}

Back to table of contents

Update the name of a Folder in your Ez Texting Inbox

URL

https://app.eztexting.com/messages-folders/ID?format=format

Format & Method

Format can be either XML or JSON
HTTP Method must be POST

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
ID (Required) ID of the folder to update
Name (Required) Name of the folder

Return Values

None

HTTP Status Codes

 
200 OK - Success
400 Bad Request - Request is not valid. An accompanying error message explains why.
401 Unauthorized - Authentication credentials are missing or incorrect
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>400</Code>
	<Errors>
		<Error>Missing folder name</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example

curl -d 'User=winnie&Password=the-pooh&Name=Customers' https://app.eztexting.com/messages-folders/123?format=xml
HTTP/1.1 200 OK
Date: Wed, 25 Jan 2012 16:13:51 GMT
Content-Length: 0
Content-Type: application/xml

JSON Example

curl -d 'User=winnie&Password=the-pooh&Name=Customers' https://app.eztexting.com/messages-folders/123?format=json
HTTP/1.1 200 OK
Date: Wed, 25 Jan 2012 16:15:19 GMT
Content-Length: 0
Content-Type: application/json

Back to table of contents

Delete a Folder in your Ez Texting Inbox

URL

https://app.eztexting.com/messages-folders/ID?format=format

Format & Method

Format can be either XML or JSON
DELETE (or POST with the added parameter _method=DELETE)

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
ID (Required) ID of the folder to delete

Return Values

None

HTTP Status Codes

204 No Content - Resource was deleted
401 Unauthorized - Authentication credentials are missing or incorrect
404 Does Not Exist - Message was not found. Please check parameters.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>404</Code>
	<Errors>
		<Error>Sorry, nothing was found</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example

curl -X DELETE -v 'https://app.eztexting.com/messages-folders/123?format=xml&User=winnie&Password=the-pooh'
HTTP/1.1 204 No Content
Date: Wed, 25 Jan 2012 16:13:51 GMT
Content-Length: 0
Content-Type: application/xml

JSON Example

curl -X DELETE -v 'https://app.eztexting.com/messages-folders/123?format=json&User=winnie&Password=the-pooh'
HTTP/1.1 204 No Content
Date: Wed, 25 Jan 2012 16:15:19 GMT
Content-Length: 0
Content-Type: application/json

Back to table of contents

Get all Folders in your Ez Texting Inbox

URL

https://app.eztexting.com/messages-folders?format=format

Format & Method

Format can be either XML or JSON
HTTP Method must be GET

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password

Return Values

ID Unique ID referencing the folder
Name Name of the folder

HTTP Status Codes

200 OK - Success
401 Unauthorized - Authentication credentials are missing or incorrect
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example

	curl 'https://app.eztexting.com/messages-folders?format=xml&User=winnie&Password=the-pooh'
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Success</Status>
	<Code>200</Code>
	<Entries>
		<Entry>
			<ID>1</ID>
			<Name>Customers</Name>
		</Entry>
		<Entry>
			<ID>2</ID>
			<Name>Fans</Name>
		</Entry>
	</Entries>
</Response>

JSON Example

curl 'https://app.eztexting.com/messages-folders?format=json&User=winnie&Password=the-pooh'
{
	"Response":{
		"Status":"Success",
		"Code":200,
		"Entries":[
			{
				"ID":1,
				"Name":"Customers"
			},
			{
				"ID":2,
				"Name":"Fans"
			}
		]
	}
}

Back to table of contents

Get a single folder in your Ez Texting Inbox

URL

https://app.eztexting.com/messages-folders/ID?format=format

Format & Method

Format can be either XML or JSON
HTTP Method must be GET

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
ID (Required) ID of the folder to retrieve

Return Values

Name Name of the folder

HTTP Status Codes

200 OK - Success
401 Unauthorized - Authentication credentials are missing or incorrect
404 Does Not Exist - Folder was not found. Please check parameters.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>404</Code>
	<Errors>
		<Error>Sorry, nothing was found</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example

curl 'https://app.eztexting.com/messages-folders/123?format=xml&User=winnie&Password=the-pooh'
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Success</Status>
	<Code>200</Code>
	<Entry>
		<Name>Customers</Name>
	</Entry>
</Response>

JSON Example

curl 'https://app.eztexting.com/messages-folders/123?format=json&User=winnie&Password=the-pooh'
{
	"Response":{
		"Status":"Success",
		"Code":200,
		"Entry":{
			"Name":"Customers"
		}
	}
}

Back to table of contents

Keywords

Check whether a Keyword is available to rent on Ez Texting's short code. Please note, we will check availability for the country your account is set to.

URL

https://app.eztexting.com/keywords/new?Keyword=keyword&format=format

Format & Method

Format can be either XML or JSON
HTTP Method must be GET

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
Keyword (Required) The keyword to be checked

Return Values

Keyword Keyword that was checked
Available Indicates if the Keyword is available

HTTP Status Codes

200 Success - The Keyword is available
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>403</Code>
	<Errors>
		<Error>Keyword: Keywords can not contain spaces or the following characters: ?, @, ., !, [, ], {, }, -, +, #, $, %, &amp;, &apos;, (, ), *, /, \, :, ;, &lt;, &gt;, =, ^, `, |, ~</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example And Response:

	curl "https://app.eztexting.com/keywords/new?Keyword=honey&User=winnie&Password=the-pooh&format=xml"
	<?xml version="1.0" encoding="UTF-8"?>
	<Response>
	<Status>Success</Status>
	<Code>200</Code>
	<Entry>
	<Keyword>honey</Keyword>
	<Available>1</Available>
	</Entry>
	</Response>

JSON Example And Response:

	curl "https://app.eztexting.com/keywords/new?Keyword=honey&User=winnie&Password=the-pooh&format=json"
{
	"Response":{
		"Status":"Success",
		"Code":200,
		"Entry":{
			"Keyword":"honey",
			"Available":true
		}
	}
}

Back to table of contents

Rents a Keyword for use on Ez Texting's short code in the country your account is set to send messages to. You may rent a Keyword using a credit card you have stored in your Ez Texting account, or you may pass credit card details when you call the API.

URL

https://app.eztexting.com/keywords?format=format

Format & Method

Format can be either XML or JSON
HTTP Method must be POST

Parameters (Stored Card)

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
Keyword (Required) The keyword to rent
StoredCreditCard (Required) Last four digits of any card stored in your Ez Texting account.

Parameters (Non-Stored Card)

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
Keyword (Required) The keyword to rent
FirstName (Required) The first name on the credit card
LastName (Required) The last name on the credit card
Street (Required) The billing street address
City (Required) The billing address city
State (Required) The billing address state/province
ZIP (Required) The billing address zip code
Country (Required) The billing address country
CreditCardTypeID (Required) Credit card type: Amex, Discover, MasterCard, Visa
Number (Required) Credit card number
SecurityCode (Required) Credit card security code (CV2)
ExpirationMonth (Required) Credit card's expiration month, two digits
ExpirationYear (Required) Credit card's expiration year, four digits

Return Values

ID Unique ID referencing the keyword
Keyword Keyword
EnableDoubleOptIn Is double opt-in feature enabled for your keyword
ConfirmMessage Confirmation message
JoinMessage Auto-Reply
ForwardEmail Email address to forward incoming messages for your keyword
ForwardUrl URL to forward incoming messages for your keyword
ContactGroupIDs Groups to add customers who text in your keyword

HTTP Status Codes

201 Created - A new keyword was created
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>403</Code>
	<Errors>
		<Error>Keyword: Keywords can not contain spaces or the following characters: ?, @, ., !, [, ], {, }, -, +, #, $, %, &amp;, &apos;, (, ), *, /, \, :, ;, &lt;, &gt;, =, ^, `, |, ~</Error>
		<Error>FirstName: Value is required and can't be empty</Error>
		<Error>LastName: Value is required and can't be empty</Error>
		<Error>Number: '123456' contains an invalid amount of digits</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example
(Stored Card):

curl -d 'User=winnie&Password=the-pooh&Keyword=honey&StoredCreditCard=1111' https://app.eztexting.com/keywords?format=xml

XML Example
(Non-Stored Card):

curl -d 'User=winnie&Password=the-pooh&Keyword=honey&FirstName=Winnie&LastName=The Pooh&Street=Hollow tree, under the name of Mr. Sanders&City=Hundred Acre Woods&State=New York&Zip=12345&Country=US&CreditCardTypeID=Visa&Number=4111111111111111&SecurityCode=123&ExpirationMonth=10&ExpirationYear=2017' https://app.eztexting.com/keywords?format=xml
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Success</Status>
	<Code>201</Code>
	<Entry>
		<ID>147258369</ID>
		<Keyword>honey</Keyword>
		<EnableDoubleOptIn>0</EnableDoubleOptIn>
		<ConfirmMessage>Reply Y to join</ConfirmMessage>
		<JoinMessage>Thank you for joining our list</JoinMessage>
		<ForwardEmail />
		<ForwardUrl />
		<ContactGroupIDs />
	</Entry>
</Response>

JSON Example And Response
(Stored Card):

curl -d 'User=winnie&Password=the-pooh&Keyword=honey&StoredCreditCard=1111' https://app.eztexting.com/keywords?format=json

JSON Example And Response
(Non-Stored Card):

curl -d 'User=winnie&Password=the-pooh&Keyword=honey&FirstName=Winnie&LastName=The Pooh&Street=Hollow tree, under the name of Mr. Sanders&City=Hundred Acre Woods&State=New York&Zip=12345&Country=US&CreditCardTypeID=Visa&Number=4111111111111111&SecurityCode=123&ExpirationMonth=10&ExpirationYear=2017' https://app.eztexting.com/keywords?format=json
{
	"Response":{
		"Status":"Success",
		"Code":201,
		"Entry":{
			"ID":147258369,
			"Keyword":"honey",
			"EnableDoubleOptIn":false,
			"ConfirmMessage":"Reply Y to join",
			"JoinMessage":"Thank you for joining our list",
			"ForwardEmail":"",
			"ForwardUrl":"",
			"ContactGroupIDs":[]
		}
	}
}

Back to table of contents

Configures an active Keyword for use on Ez Texting's short code in the country your account is set to send messages to.

URL

https://app.eztexting.com/keywords/keyword?format=format

Format & Method

Format can be either XML or JSON
HTTP Method must be POST

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
Keyword (Required) Keyword
EnableDoubleOptIn Is double opt-in feature enabled for your keyword
ConfirmMessage Confirmation message
JoinMessage Auto-Reply
ForwardEmail Email address to forward incoming messages for your keyword
ForwardUrl URL to forward incoming messages for your keyword
ContactGroupIDs Groups to add customers who text in your keyword

Return Values

ID Unique ID referencing the keyword
Keyword Keyword
EnableDoubleOptIn Is double opt-in feature enabled for your keyword
ConfirmMessage Confirmation message
JoinMessage Auto-Reply
ForwardEmail Email address to forward incoming messages for your keyword
ForwardUrl URL to forward incoming messages for your keyword
ContactGroupIDs Groups to add customers who text in your keyword

HTTP Status Codes

200 Success - Your keyword was configured
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>403</Code>
	<Errors>
		<Error>JoinMessage: Value is required and can't be empty</Error>
		<Error>ForwardEmail: 'honey@bear-alliance' is not a valid email address</Error>
		<Error>ForwardUrl: 'bear-alliance.co.uk/honey-donations' is not a valid URI</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example And Response:

curl -d 'User=winnie&Password=the-pooh&EnableDoubleOptIn=1&ConfirmMessage=Reply Y to join our sweetest list&JoinMessage=The only reason for being a bee that I know of, is to make honey. And the only reason for making honey, is so as I can eat it.&ForwardEmail=honey@bear-alliance.co.uk &ForwardUrl=http://bear-alliance.co.uk/honey-donations/&ContactGroupIDs[]=honey lovers' https://app.eztexting.com/keywords/honey?format=xml
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Success</Status>
	<Code>200</Code>
	<Entry>
		<ID>147258369</ID>
		<Keyword>honey</Keyword>
		<EnableDoubleOptIn>1</EnableDoubleOptIn>
		<ConfirmMessage>Reply Y to join our sweetest list</ConfirmMessage>
		<JoinMessage>The only reason for being a bee that I know of, is to make honey. And the only reason for making honey, is so as I can eat it.</JoinMessage>
		<ForwardEmail>honey@bear-alliance.co.uk</ForwardEmail>
		<ForwardUrl>http://bear-alliance.co.uk/honey-donations/</ForwardUrl>
		<ContactGroupIDs>
			<Group>honey lovers</Group>
		</ContactGroupIDs>
	</Entry>
</Response>

JSON Example And Response:

curl -d 'User=winnie&Password=the-pooh&EnableDoubleOptIn=1&ConfirmMessage=Reply Y to join our sweetest list&JoinMessage=The only reason for being a bee that I know of, is to make honey. And the only reason for making honey, is so as I can eat it.&ForwardEmail=honey@bear-alliance.co.uk &ForwardUrl=http://bear-alliance.co.uk/honey-donations/&ContactGroupIDs[]=honey lovers' https://app.eztexting.com/keywords/honey?format=json
{
	"Response":{
		"Status":"Success",
		"Code":200,
		"Entry":{
			"ID":147258369,
			"Keyword":"honey",
			"EnableDoubleOptIn":true,
			"ConfirmMessage":"Reply Y to join our sweetest list",
			"JoinMessage":"The only reason for being a bee that I know of, is to make honey. And the only reason for making honey, is so as I can eat it.",
			"ForwardEmail":"honey@bear-alliance.co.uk",
			"ForwardUrl":"http://bear-alliance.co.uk/honey-donations/",
			"ContactGroupIDs":[
				"honey lovers"
			]
		}
	}
}

Cancel A Keyword

Cancels an active Keyword on Ez Texting's short code in the country your account is set to send messages to.

URL

https://app.eztexting.com/keywords/keyword?format=format

Format & Method

Format can be either XML or JSON
DELETE (or POST with the added parameter _method=DELETE)

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
Keyword (Required) Keyword

Return Values

Note There are no return values for this API!

HTTP Status Codes

204 No Content - Your keyword was deleted
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>403</Code>
	<Errors>
		<Error>Sorry, nothing was found</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example And Response:

curl -X DELETE "https://app.eztexting.com/keywords/honey?format=xml&User=winnie&Password=the-pooh"
HTTP/1.1 204 No Content
Date: Fri, 10 Jun 2011 17:03:19 GMT
Content-Length: 0
Connection: close
Content-Type: application/xml

JSON Example And Response:

curl -X DELETE "https://app.eztexting.com/keywords/honey?format=json&User=winnie&Password=the-pooh"
HTTP/1.1 204 No Content
Date: Fri, 10 Jun 2011 17:05:14 GMT
Content-Length: 0
Connection: close
Content-Type: application/json

Back to table of contents

Credits

Checks credit balances on your account.

URL

https://app.eztexting.com/billing/credits/get?format=format

Format & Method

Format can be either XML or JSON
HTTP Method must be GET

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password

Return Values

PlanCredits Number of plan credits
AnytimeCredits Number of Anytime credits
TotalCredits Total number of credits

HTTP Status Codes

200 Success
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example And Response:

curl "https://app.eztexting.com/billing/credits/get?User=winnie&Password=the-pooh&format=xml"
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Success</Status>
	<Code>200</Code>
	<Entry>
		<PlanCredits>15</PlanCredits>
		<AnytimeCredits>138</AnytimeCredits>
		<TotalCredits>153</TotalCredits>
	</Entry>
</Response>

JSON Example And Response:

curl "https://app.eztexting.com/billing/credits/get?User=winnie&Password=the-pooh&format=json"
{
	"Response":{
		"Status":"Success",
		"Code":200,
		"Entry":{
			"PlanCredits":15,
			"AnytimeCredits":138,
			"TotalCredits":153
		}
	}
}

Back to table of contents

Buys more credits for your account. You may purchase credits using a credit card you have stored in your Ez Texting account, or you may pass credit card details when you call the API.

URL

https://app.eztexting.com/billing/credits?format=format

Format & Method

Format can be either XML or JSON
HTTP Method must be POST

Parameters (Stored Card)

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
NumberOfCredits (Required) Number of credits to purchase
CouponCode Coupon or Promotional Code
StoredCreditCard (Required) Last four digits of any card stored in your Ez Texting account.

Parameters (Non-Stored Card)

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
NumberOfCredits (Required) Number of credits to purchase
CouponCode Coupon or Promotional Code
FirstName (Required) The first name on the credit card
LastName (Required) The last name on the credit card
Street (Required) The billing street address
City (Required) The billing address city
State (Required) The billing address state/province
ZIP (Required) The billing address zip code
Country (Required) The billing address country
CreditCardTypeID (Required) Credit card type: Amex, Discover, MasterCard, Visa
Number (Required) Credit card number
SecurityCode (Required) Credit card security code (CV2)
ExpirationMonth (Required) Credit card's expiration month, two digits
ExpirationYear (Required) Credit card's expiration year, four digits

Return Values

BoughtCredits Number of credits purchased
Amount Total amount charged
Discount Discount applied (if any)
AnytimeCredits Number of anytime credits in account after purchase
TotalCredits Total number of credits in account after purchase

HTTP Status Codes

201 Success - Credits were successfully purchased
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>403</Code>
	<Errors>
		<Error>NumberOfCredits: '10,000' contains characters which are not digits</Error>
		<Error>FirstName: Value is required and can't be empty</Error>
		<Error>LastName: Value is required and can't be empty</Error>
		<Error>Number: '123456' contains an invalid amount of digits</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example And Response
(Stored Card):

curl -d 'User=winnie&Password=the-pooh&NumberOfCredits=1000&StoredCreditCard=1111' https://app.eztexting.com/billing/credits?format=xml

XML Example And Response
(Non-Stored Card):

curl -d 'User=winnie&Password=the-pooh&NumberOfCredits=1000&FirstName=Winnie&LastName=The Pooh&Street=Hollow tree, under the name of Mr. Sanders&City=Hundred Acre Woods&State=East Sussex&Zip=12345&Country=UK&CreditCardTypeID=Visa&Number=4111111111111111&SecurityCode=123&ExpirationMonth=10&ExpirationYear=2017' https://app.eztexting.com/billing/credits?format=xml
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Success</Status>
	<Code>201</Code>
	<Entry>
		<BoughtCredits>1000</BoughtCredits>
		<Amount>9.45</Amount>
		<Discount>0.55</Discount>
		<PlanCredits>10</PlanCredits>
		<AnytimeCredits>1200</AnytimeCredits>
		<TotalCredits>1210</TotalCredits>
	</Entry>
</Response>

JSON Example And Response
(Stored Card):

curl -d 'User=winnie&Password=the-pooh&NumberOfCredits=1000&StoredCreditCard=1111' https://app.eztexting.com/billing/credits?format=json

(Non-Stored Card):

curl -d 'User=winnie&Password=the-pooh&NumberOfCredits=1000&FirstName=Winnie&LastName=The Pooh&Street=Hollow tree, under the name of Mr. Sanders&City=Hundred Acre Woods&State=East Sussex&Zip=12345&Country=UK&CreditCardTypeID=Visa&Number=4111111111111111&SecurityCode=123&ExpirationMonth=10&ExpirationYear=2017' https://app.eztexting.com/billing/credits?format=json
{
	"Response":{
		"Status":"Success",
		"Code":201,
		"Entry":{
			"BoughtCredits":1000,
			"Amount":9.45,
			"Discount":0.55,
			"PlanCredits":10,
			"AnytimeCredits":1200,
			"TotalCredits":1210
		}
	}
}

Back to table of contents

Contacts

Create a new contact that will be stored in your Ez Texting contact list

URL

https://app.eztexting.com/contacts?format=format

Format & Method

Format can be either XML or JSON
HTTP Method must be POST

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
PhoneNumber (Required) 10 digit phone number of the contact
FirstName (Optional) First name of contact
LastName (Optional) Last name of contact
Email (Optional) Email address of contact
Groups (Optional) Groups to add the contact to

Return Values

ID Unique ID referencing the contact
PhoneNumber Phone number of the contact
FirstName First name of the contact
LastName Last name of the contact
Email Email address of the contact
Note Note
Source Source of the contact (indicates the way the contact was subscribed)
Groups Groups the contact belongs to
CreatedAt Date the contact was subscribed
UpdatedAt Date the contact was last updated

HTTP Status Codes

201 Success - A new resource was created
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>403</Code>
	<Errors>
		<Error>PhoneNumber: '(123)45-67' contains characters which are not digits</Error>
		<Error>FirstName: 'A Very Small Animal' is more than 10 characters long</Error>
		<Error>Email: 'piglet@small-animals-alliance' is not a valid email address</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example

curl -d 'User=winnie&Password=the-pooh&PhoneNumber=2123456785&FirstName=Piglet&Email=piglet@small-animals-alliance.org &Note=It is hard to be brave, when you are only a Very Small Animal.&Groups[]=Friends&Groups[]=Neighbors' https://app.eztexting.com/contacts?format=xml
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Success</Status>
	<Code>201</Code>
	<Entry>
		<ID>4f0b52fd734fada068000000</ID>
		<PhoneNumber>2123456785</PhoneNumber>
		<FirstName>Piglet</FirstName>
		<LastName />
		<Email>piglet@small-animals-alliance.org</Email>
		<Note>It is hard to be brave, when you are only a Very Small Animal.</Note>
		<Source>API</Source>
		<Groups>
			<Group>Friends</Group>
			<Group>Neighbors</Group>
		</Groups>
		<CreatedAt>01-17-2012</CreatedAt>
		<UpdatedAt>01-17-2012</UpdatedAt>
	</Entry>
</Response>

JSON Example

	curl -d 'User=winnie&Password=the-pooh&PhoneNumber=2123456785&FirstName=Piglet&Email=piglet@small-animals-alliance.org &Note=It is hard to be brave, when you are only a Very Small Animal.&Groups[]=Friends&Groups[]=Neighbors' https://app.eztexting.com/contacts?format=json
{
	"Response":{
		"Status":"Success",
		"Code":201,
		"Entry":{
			"ID":4f0b52fd734fada068000000,
			"PhoneNumber":"2123456785",
			"FirstName":"Piglet",
			"LastName":"",
			"Email":"piglet@small-animals-alliance.org",
			"Note":"It is hard to be brave, when you are only a Very Small Animal.",
			"Source":"API",
			"Groups":[
				"Friends",
				"Neighbors"
			],
			"CreatedAt":"01-17-2012"
			"UpdatedAt":"01-17-2012"
		}
	}
}

Back to table of contents

Update a contact stored in your Ez Texting contact list

URL

https://app.eztexting.com/contacts/ID?format=format

Format & Method

Format can be either XML or JSON
HTTP Method must be POST

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
ID (Required) ID of the contact to update
PhoneNumber (Required) 10 digit phone number of the contact
FirstName (Optional) First name of contact
LastName (Optional) Last name of contact
Email (Optional) Email address of contact
Groups (Optional) Groups to add the contact to
OptOut (Optional) 1 if you want to opt out the contact

Return Values

ID Unique ID referencing the contact
PhoneNumber Phone number of the contact
FirstName First name of the contact
LastName Last name of the contact
Email Email address of the contact
Note Note
Source Source of the contact (indicates the way the contact was subscribed)
Groups Groups the contact belongs to
CreatedAt Date the contact was subscribed
UpdatedAt Date the contact was last updated

HTTP Status Codes

201 OK - Success
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>403</Code>
	<Errors>
		<Error>PhoneNumber: '(123)45-67' contains characters which are not digits</Error>
		<Error>FirstName: 'A Very Small Animal' is more than 10 characters long</Error>
		<Error>Email: 'piglet@small-animals-alliance' is not a valid email address</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example

curl -d 'User=winnie&Password=the-pooh&PhoneNumber=2123456785&FirstName=Piglet&Email=piglet@small-animals-alliance.org &Note=It is hard to be brave, when you are only a Very Small Animal.&Groups[]=Friends&Groups[]=Neighbors' https://app.eztexting.com/contacts/4f0b5720734fada368000000?format=xml
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Success</Status>
	<Code>200</Code>
	<Entry>
		<ID>4f0b5720734fada368000000</ID>
		<PhoneNumber>2123456785</PhoneNumber>
		<FirstName>Piglet</FirstName>
		<LastName />
		<Email>piglet@small-animals-alliance.org</Email>
		<Note>It is hard to be brave, when you are only a Very Small Animal.</Note>
		<Source>API</Source>
		<Groups>
			<Group>Friends</Group>
			<Group>Neighbors</Group>
		</Groups>
		<CreatedAt>01-17-2012</CreatedAt>
		<UpdatedAt>01-17-2012</UpdatedAt>
	</Entry>
</Response>

JSON Example

curl -d 'User=winnie&Password=the-pooh&PhoneNumber=2123456785&FirstName=Piglet&Email=piglet@small-animals-alliance.org &Note=It is hard to be brave, when you are only a Very Small Animal.&Groups[]=Friends&Groups[]=Neighbors' https://app.eztexting.com/contacts/4f0b5720734fada368000000?format=json
{
	"Response":{
		"Status":"Success",
		"Code":200,
		"Entry":{
			"ID":4f0b5720734fada368000000,
			"PhoneNumber":"2123456785",
			"FirstName":"Piglet",
			"LastName":"",
			"Email":"piglet@small-animals-alliance.org",
			"Note":"It is hard to be brave, when you are only a Very Small Animal.",
			"Source":"API",
			"Groups":[
				"Friends",
				"Neighbors"
			],
			"CreatedAt":"01-17-2012"
			"UpdatedAt":"01-17-2012"
		}
	}
}

Back to table of contents

Delete a contact stored in your Ez Texting contact list

URL

https://app.eztexting.com/contacts/ID?format=format

Format & Method

Format can be either XML or JSON
DELETE (or POST with the added parameter _method=DELETE)

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
ID (Required) ID of the contact to delete

Return Values

None

HTTP Status Codes

204 No Content - Resource was deleted
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>403</Code>
	<Errors>
		<Error>Sorry, nothing was found</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example

curl -X DELETE -v 'https://app.eztexting.com/contacts/4f0b52fd734fada068000000?format=xml&User=winnie&Password=the-pooh'
HTTP/1.1 204 No Content
Date: Mon, 09 Jan 2012 22:05:11 GMT
Content-Length: 0
Connection: close
Content-Type: application/xml

JSON Example

curl -X DELETE -v 'https://app.eztexting.com/contacts/4f0b52fd734fada068000000?format=json&User=winnie&Password=the-pooh'
HTTP/1.1 204 No Content
Date: Mon, 09 Jan 2012 22:10:11 GMT
Content-Length: 0
Connection: close
Content-Type: application/json

Back to table of contents

Get a list of contacts stored in your Ez Texting contact list.

URL

https://app.eztexting.com/contacts?format=format

Format & Method

Format can be either XML or JSON
GET

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password

Filters

query (Optional) Search contacts by first name / last name / phone number
source (Optional) Source of contacts. Available values: 'Unknown', 'Manually Added', 'Upload', 'Web Widget', 'API', 'Keyword'
optout (Optional) Opted out / opted in contacts. Available values: true, false.
group (Optional) Name of the group the contacts belong to

Sorting

sortBy (Optional) Property to sort by. Available values: PhoneNumber, FirstName, LastName, CreatedAt, UpdatedAt
sortDir (Optional) Direction of sorting. Available values: asc, desc

Pagination

itemsPerPage (Optional) Number of results to retrieve. By default, 10 most recently added contacts are retrieved.
page (Optional) Page of results to retrieve

Return Values

ID Unique ID referencing the contact
PhoneNumber Phone number of the contact
FirstName First name of the contact
LastName Last name of the contact
Email Email address of the contact
Note Note
Source Source of the contact (indicates the way the contact was subscribed)
OptOut Indicates if the contact is opted out
Groups Groups the contact belongs to
CreatedAt Date the contact was subscribed
UpdatedAt Date the contact was last updated

Note The return value OptOut is only provided for contacts that are opted out. If a contact is opted out, this value will be True.

HTTP Status Codes

200 OK - Success
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example

curl 'https://app.eztexting.com/contacts?format=xml&User=winnie&Password=the-pooh'
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Success</Status>
	<Code>200</Code>
	<Entries>
		<Entry>
			<ID>4f0b52fd734fada068000000</ID>
			<PhoneNumber>2123456785</PhoneNumber>
			<FirstName>Piglet</FirstName>
			<LastName />
			<Email>piglet@small-animals-alliance.org</Email>
			<Note>It is hard to be brave, when you are only a Very Small Animal.</Note>
			<Source>API</Source>
			<OptOut>1</OptOut>
			<Groups>
				<Group>Friends</Group>
				<Group>Neighbors</Group>
			</Groups>
			<CreatedAt>01-17-2012</CreatedAt>
			<UpdatedAt>01-17-2012</UpdatedAt>
		</Entry>
		<Entry>
			<ID>4f0b536c734fad9968000000</ID>
			<PhoneNumber>2123456786</PhoneNumber>
			<FirstName>Winnie</FirstName>
			<LastName>T. Pooh</LastName>
			<Email>winnie@weightwatchers.com</Email>
			<Note>A bear, however hard he tries, grows tubby without exercise</Note>
			<Source>Upload</Source>
			<Groups />
			<CreatedAt>01-15-2012</CreatedAt>
			<UpdatedAt>01-15-2012</UpdatedAt>
		</Entry>
	</Entries>
</Response>

JSON Example

curl 'https://app.eztexting.com/contacts?format=json&User=winnie&Password=the-pooh'
{
	"Response":{
		"Status":"Success",
		"Code":200,
		"Entries":[
			{
				"ID":4f0b52fd734fada068000000,
				"PhoneNumber":"2123456785",
				"FirstName":"Piglet",
				"LastName":"",
				"Email":"piglet@small-animals-alliance.org",
				"Note":"It is hard to be brave, when you are only a Very Small Animal.",
				"Source":"API",
				"OptOut":true,
				"Groups":[
					"Friends",
					"Neighbors"
				],
				"CreatedAt":"01-17-2012"
				"UpdatedAt":"01-17-2012"
			},
			{
				"ID":4f0b536c734fad9968000000,
				"PhoneNumber":"2123456786",
				"FirstName":"Winnie",
				"LastName":"T. Pooh",
				"Email":"winnie@weightwatchers.com",
				"Note":"A bear, however hard he tries, grows tubby without exercise",
				"Source":"Upload",
				"Groups":[
				],
				"CreatedAt":"01-15-2012"
				"UpdatedAt":"01-15-2012"
			}
		]
	}
}

Back to table of contents

Get a single contact stored in your Ez Texting contact list.

URL

https://app.eztexting.com/contacts/ID?format=format

Format & Method

Format can be either XML or JSON
GET

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
ID (Required) ID of the contact to show

Return Values

ID Unique ID referencing the contact
PhoneNumber Phone number of the contact
FirstName First name of the contact
LastName Last name of the contact
Email Email address of the contact
Note Note
Source Source of the contact (indicates the way the contact was subscribed)
OptOut Indicates if the contact is opted out
Groups Groups the contact belongs to
CreatedAt Date the contact was subscribed
UpdatedAt Date the contact was last updated

Note The return value OptOut is only provided for contacts that are opted out. If a contact is opted out, this value will be True.

HTTP Status Codes

200 OK - Success
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>403</Code>
	<Errors>
		<Error>Sorry, nothing was found</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example

curl 'https://app.eztexting.com/contacts/4f0b52fd734fada068000000?format=xml&User=winnie&Password=the-pooh'
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Success</Status>
	<Code>200</Code>
	<Entry>
		<ID>4f0b52fd734fada068000000</ID>
		<PhoneNumber>2123456785</PhoneNumber>
		<FirstName>Piglet</FirstName>
		<LastName />
		<Email>piglet@small-animals-alliance.org</Email>
		<Note>It is hard to be brave, when you are only a Very Small Animal.</Note>
		<Source>API</Source>
		<OptOut>1</OptOut>
		<Groups>
			<Group>Friends</Group>
			<Group>Neighbors</Group>
		</Groups>
		<CreatedAt>01-17-2012</CreatedAt>
		<UpdatedAt>01-17-2012</UpdatedAt>
	</Entry>
</Response>

JSON Example

curl 'https://app.eztexting.com/contacts/4f0b52fd734fada068000000?format=json&User=winnie&Password=the-pooh'
{
	"Response":{
		"Status":"Success",
		"Code":200,
		"Entry":{
			"ID":4f0b52fd734fada068000000,
			"PhoneNumber":"2123456785",
			"FirstName":"Piglet",
			"LastName":"",
			"Email":"piglet@small-animals-alliance.org",
			"Note":"It is hard to be brave, when you are only a Very Small Animal.",
			"Source":"API",
			"OptOut":true,
			"Groups":[
				"Friends",
				"Neighbors"
			],
			"CreatedAt":"01-17-2012"
			"UpdatedAt":"01-17-2012"
		}
	}
}

Back to table of contents

Groups

Create a new group that will be stored in your Ez Texting account

URL

https://app.eztexting.com/groups?format=format

Format & Method

Format can be either XML or JSON
HTTP Method must be POST

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
Name (Required) Name of the group
Note (Optional) Note

Return Values

ID Unique ID referencing the group
Name The name of the group
Note Note
ContactCount Number of contacts in the group

HTTP Status Codes

201 Created - A new resource was created
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>403</Code>
	<Errors>
		<Error>Name: &apos;Small Animals&apos; is more than 12 characters long</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example

curl -d 'User=winnie&Password=the-pooh&Name=Tubby Bears&Note=A bear, however hard he tries, grows tubby without exercise' https://app.eztexting.com/groups?format=xml
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Success</Status>
	<Code>201</Code>
	<Entry>
		<ID>162467</ID>
		<Name>Tubby Bears</Name>
		<Note>A bear, however hard he tries, grows tubby without exercise</Note>
		<ContactCount>0</ContactCount>
	</Entry>
</Response>

JSON Example

curl -d 'User=winnie&Password=the-pooh&Name=Tubby Bears&Note=A bear, however hard he tries, grows tubby without exercise' https://app.eztexting.com/groups?format=json
{
"Response":{
	"Status":"Success",
	"Code":201,
		"Entry":{
			"ID":162467,
			"Name":"Tubby Bears",
			"Note":"A bear, however hard he tries, grows tubby without exercise",
			"ContactCount":0
		}
	}
}

Back to table of contents

Update a group that is stored in your Ez Texting account

URL

https://app.eztexting.com/groups/ID?format=format

Format & Method

Format can be either XML or JSON
HTTP Method must be POST

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
ID (Required) ID of the group to update
Name (Required) Name of the group
Note (Optional) Note

Return Values

ID Unique ID referencing the group
Name The name of the group
Note Note
ContactCount Number of contacts in the group

HTTP Status Codes

201 OK - Success
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>403</Code>
	<Errors>
		<Error>Name: &apos;Small Animals&apos; is more than 12 characters long</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example

curl -d 'User=winnie&Password=the-pooh&Name=Tubby Bears&Note=A bear, however hard he tries, grows tubby without exercise' https://app.eztexting.com/groups/162467?format=xml
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Success</Status>
	<Code>200</Code>
	<Entry>
		<ID>162467</ID>
		<Name>Tubby Bears</Name>
		<Note>A bear, however hard he tries, grows tubby without exercise</Note>
		<ContactCount>3</ContactCount>
	</Entry>
</Response>

JSON Example

curl -d 'User=winnie&Password=the-pooh&Name=Tubby Bears&Note=A bear, however hard he tries, grows tubby without exercise' https://app.eztexting.com/groups/162467?format=json
{
	"Response":{
		"Status":"Success",
		"Code":200,
		"Entry":{
			"ID":162467,
			"Name":"Tubby Bears",
			"Note":"A bear, however hard he tries, grows tubby without exercise",
			"ContactCount":3
		}
	}
}

Back to table of contents

Delete a group that is stored in your Ez Texting account

URL

https://app.eztexting.com/groups/ID?format=format

Format & Method

Format can be either XML or JSON
DELETE (or POST with the added parameter _method=DELETE)

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
ID (Required) ID of the group to delete

Return Values

None

HTTP Status Codes

204 No Content - Group was deleted
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>403</Code>
	<Errors>
		<Error>Sorry, nothing was found</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example

curl -X DELETE -v 'https://app.eztexting.com/groups/162467?format=xml&User=winnie&Password=the-pooh'
HTTP/1.1 204 No Content
Date: Wed, 25 Jan 2012 16:13:51 GMT
Content-Length: 0
Content-Type: application/xml

JSON Example

curl -X DELETE -v 'https://app.eztexting.com/groups/162467?format=json&User=winnie&Password=the-pooh'
HTTP/1.1 204 No Content
Date: Wed, 25 Jan 2012 16:15:19 GMT
Content-Length: 0
Content-Type: application/json

Back to table of contents

Get a list of groups stored in your Ez Texting account.

URL

https://app.eztexting.com/groups?format=format

Format & Method

Format can be either XML or JSON
GET

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password

Sorting

sortBy (Optional) Property to sort by. Available values: Name
sortDir (Optional) Direction of sorting. Available values: asc, desc

Pagination

itemsPerPage (Optional) Number of results to retrieve. By default, first 10 groups sorted in alphabetical order are retrieved.
page (Optional) Page of results to retrieve

Return Values

ID Unique ID referencing the group
Name Name of the group
Note Note
ContactCount Number of contacts in the group

HTTP Status Codes

200 OK - Success
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example

curl 'https://app.eztexting.com/groups?format=xml&User=winnie&Password=the-pooh'
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Success</Status>
	<Code>200</Code>
	<Entries>
		<Entry>
			<ID>127012</ID>
			<Name>Honey lovers</Name>
			<Note />
			<ContactCount>0</ContactCount>
		</Entry>
		<Entry>
			<ID>162467</ID>
			<Name>Tubby Bears</Name>
			<Note>A bear, however hard he tries, grows tubby without exercise</Note>
			<ContactCount>3</ContactCount>
		</Entry>
	</Entries>
</Response>

JSON Example

curl 'https://app.eztexting.com/contacts?format=json&User=winnie&Password=the-pooh'
{
	"Response":{
		"Status":"Success",
		"Code":200,
		"Entries":[
			{
				"ID":127012,
				"Name":"Honey lovers",
				"Note":"",
				"ContactCount":0
			},
			{
				"ID":162467,
				"Name":"Tubby Bears",
				"Note":"A bear, however hard he tries, grows tubby without exercise",
				"ContactCount":3
			}
		]
	}
}

Back to table of contents

Get a single group stored in your Ez Texting account.

URL

https://app.eztexting.com/groups/ID?format=format

Format & Method

Format can be either XML or JSON
GET

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
ID (Required) ID of the group to show

Return Values

ID Unique ID referencing the group
Name Name of the group
Note Note
ContactCount Number of contacts in the group

HTTP Status Codes

200 OK - Success
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>403</Code>
	<Errors>
		<Error>Sorry, nothing was found</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example

curl 'https://app.eztexting.com/groups/162467?format=xml&User=winnie&Password=the-pooh'
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Success</Status>
	<Code>200</Code>
	<Entry>
		<ID>162467</ID>
		<Name>Tubby Bears</Name>
		<Note>A bear, however hard he tries, grows tubby without exercise</Note>
		<ContactCount>3</ContactCount>
	</Entry>
</Response>

JSON Example

curl 'https://app.eztexting.com/groups/162467?format=json&User=winnie&Password=the-pooh'
{
	"Response":{
		"Status":"Success",
		"Code":200,
		"Entry":{
			"ID":162467,
			"Name":"Tubby Bears",
			"Note":"A bear, however hard he tries, grows tubby without exercise",
			"ContactCount":3
		}
	}
}

Back to table of contents

Media Files

Get a list of media files stored in your Ez Texting media library.

URL

https://app.eztexting.com/sending/files?format=format

Format & Method

Format can be either XML or JSON. HTTP Method must be GET.

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password

Pagination

itemsPerPage (Optional) Number of results to retrieve. By default, 10 most recent media files are retrieved
page (Optional) Page of results to retrieve. 1st page is returned by default

Return Values

ID Unique ID referencing the file
Name Name of the file
Path Path to the file

HTTP Status Codes

201 Success - A new message has been scheduled for delivery
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Status>Failure</Status>
    <Code>401</Code>
    <Errors>
        <Error>Authorization Required</Error>
    </Errors>
</Response>

Successful Call & Response Samples

XML Example

curl 'https://app.eztexting.com/sending/files?format=xml&User=winnie&Password=the-pooh'
<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Status>Success</Status>
    <Code>200</Code>
    <Entries>
       <Entry>
	<ID>26</ID>
	<Name>1356508b.gif</Name>
	<Path>
	https://eztxting.s3.amazonaws.com/243678/files/1356508b_1407243956.gif
	</Path>
       </Entry>
       <Entry>
	<ID>18</ID>
	<Name>anim_screenslide.mp4</Name>
	<Path>
	https://eztxting.s3.amazonaws.com/243678/mms/anim_screenslide_1407147019.mp4
	</Path>
       </Entry>
    </Entries>
</Response>

JSON Example

curl 'https://app.eztexting.com/sending/files?format=json&User=winnie&Password=the-pooh'
{
    "Response":{
        "Status":"Success",
        "Code":200,
        "Entries":[
          {
	"ID":26,
	"Name":"1356508b.gif",
	"Path":"https:\/\/eztxting.s3.amazonaws.com\/243678\/files\/1356508b_	1407243956.gif"
          },
          {
	"ID":18,
	"Name":"anim_screenslide.mp4",
	"Path":"https:\/\/eztxting.s3.amazonaws.com\/243678\/mms\/anim_screenslide_	1407147019.mp4"
          }
        ]
    }
}

Back to table of contents

Get a single file stored in your Ez Texting media library.

URL

https://app.eztexting.com/sending/files/ID?format=format

Format & Method

Format can be either XML or JSON. GET

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
ID (Required) ID of the file to show

Return Values

ID Unique ID referencing the file
Name Name of the file
Path Path to the file

HTTP Status Codes

201 Success - A new message has been scheduled for delivery
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Status>Failure</Status>
    <Code>401</Code>
    <Errors>
        <Error>Authorization Required</Error>
    </Errors>
</Response>

<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Status>Failure</Status>
    <Code>403</Code>
    <Errors>
        <Error>Sorry, nothing was found</Error>
    </Errors>
</Response>

Successful Call & Response Samples

XML Example

          curl 'https://app.eztexting.com/sending/files/26?format=xml&User=winnie&Password=the-pooh'

<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Status>Success</Status>
    <Code>200</Code>
    <Entry>
        <ID>26</ID>
        <Name>1356508b.gif</Name>
        <Path>https://eztxting.s3.amazonaws.com/243678/files/1356508b_1407243956.gif</Path>
    </Entry>
</Response>

JSON Example

          curl 'https://app.eztexting.com/sending/files/26?format=json&User=winnie&Password=the-pooh'
{
    "Response":{
        "Status":"Success",
        "Code":200,
"Entry":{
	"ID":26,
	"Name":"1356508b.gif",
	"Path":"https:\/\/eztxting.s3.amazonaws.com\/243678\/files\/1356508b_	1407243956.gif"
          },
    }
}

Back to table of contents

Create a new contact that will be stored in your Ez Texting media library

URL

https://app.eztexting.com/sending/files?format=format

Format & Method

Format can be either XML or JSON. HTTP Method must be POST.

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
Source (Required) Url to download file

Return Values

ID Unique ID referencing the file
Name Name of the file
Path Path to the file

HTTP Status Codes

201 Success - A new message has been scheduled for delivery
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Status>Failure</Status>
    <Code>401</Code>
    <Errors>
        <Error>Authorization Required</Error>
    </Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Status>Failure</Status>
    <Code>403</Code>
    <Errors>
        <Error>File has invalid extension. Only jpeg, jpg, gif, png, mp3, wav, mp4, 3gp are allowed.</Error>
    </Errors>
</Response>

Successful Call & Response Samples

XML Example

curl -d 'User=winnie&Password=the-pooh&Source=https://www.eztexting.com/sites/all/themes/ez/images/ez-texting-logo.png' https://app.eztexting.com/sending/files?format=xml
<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Status>Success</Status>
    <Code>201</Code>
    <Entry>
        <ID>113</ID>
        <Name>ez-texting-logo.png</Name>
        <Path>https://eztxting.s3.amazonaws.com/243678/mms/ez-texting-logo_1411042344.png</Path>
    </Entry>
</Response>

JSON Example

curl -d 'User=winnie&Password=the-pooh&Source=https://www.eztexting.com/sites/all/themes/ez/images/ez-texting-logo.png' https://app.eztexting.com/sending/files?format=json
{
    "Response":{
        "Status":"Success",
        "Code":201,
        "Entry":{
            "ID":114,
            "PhoneNumber":"2123456785",
            "Name":"ez-texting-logo.png",
            "Path":"https:\/\/eztxting.s3.amazonaws.com\/243678\/mms\/ez-texting-logo_	1411042378.png"
        }
    }
}

Back to table of contents

Delete file in your Ez Texting media library

URL

https://app.eztexting.com/sending/files/ID?format=format

Format & Method

Format can be either XML or JSON. DELETE (or POST with the added parameter _method=DELETE)

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
ID (Required) ID of the file to show

Return Values

None

HTTP Status Codes

201 Success - A new message has been scheduled for delivery
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Status>Failure</Status>
    <Code>401</Code>
    <Errors>
        <Error>Authorization Required</Error>
    </Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Status>Failure</Status>
    <Code>403</Code>
    <Errors>
        <Error>Sorry, nothing was found</Error>
    </Errors>
</Response>

Successful Call & Response Samples

XML Example

curl -X DELETE -v 'https://app.eztexting.com/sending/files/40?format=xml&User=winnie&Password=the-pooh'
HTTP/1.1 204 No Content
Date: Mon, 09 Jan 2012 22:05:11 GMT
Content-Length: 0
Connection: close
Content-Type: application/xml

JSON Example

curl -X DELETE -v 'https://app.eztexting.com/sending/files/40?format=json&User=winnie&Password=the-pooh'
HTTP/1.1 204 No Content
Date: Mon, 09 Jan 2012 22:10:11 GMT
Content-Length: 0
Connection: close
Content-Type: application/json

Back to table of contents

Voice Broadcast

Sends voice broadcast messages to an array of phone numbers or a Group in your Ez Texting account. You can use a file stored in your Ez Texting account as the source, or include the URL of a compatible file in the request.

URL

https://app.eztexting.com/voice/messages?format=format

Format & Method

Format can be either XML or JSON
HTTP Method must be POST

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
CallerPhonenumber (Required) 10 digit phone number
PhoneNumbers (Optional) Array of 10 digit phone number to send message to
Groups (Optional) Groups to send message to; if you don't include groups, you must specify phone numbers to send message to
Name (Required) The name of your campaign
VoiceFile (Optional) Name of the .wav file in your Ez Texting account
VoiceSource (Optional) Address to the .wav file on your server; you must specify one of the last two parameters, VoiceSource & VoiceFile
StampToSend (Optional) Time to send a scheduled message (should be a Unix timestamp)

Note Values must be properly URL encoded

Return Values

ID Unique ID referencing the voice campaign
Name Name of the voice campaign
VoiceFile Name of the .wav file in your Ez Texting account
CallerPhonenumber Caller phone number
RecipientsCount Number of actual recipients. (excluding local opt-outs)
Credits Number of credits charged for the message
StampToSend Date and time message will be sent
PhoneNumbers Array of phone numbers to receive the message
LocalOptOuts Array of locally opted-out phone numbers
GlobalOptOuts Array of globally opted-out phone numbers
Groups Array of groups to receive the message

HTTP Status Codes

201 Success - A new voice campaign has been scheduled for delivery
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
	</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>403</Code>
	<Errors>
		<Error>Groups: &apos;honey lovers 2&apos; was not found in the haystack</Error>
		<Error>PhoneNumbers: &apos;21234956786&apos; is more than 10 characters long</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example And Response:

curl -d 'User=winnie&Password=thepooh&PhoneNumbers[]=2123456785&PhoneNumbers[]=2123456786&PhoneNumbers[]=2123456787&PhoneNumbers[]=2123456788&Groups[]=honey lovers&CallerPhonenumber=2123456789&VoiceFile=yourfile.wav&StampToSend=1305582245' https://app.eztexting.com/voice/messages?format=xml
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Success</Status>
	<Code>201</Code>
	<Entry>
		<ID>826</ID>
		<Name>My voice campaign</Name>
		<VoiceFile>yourfile.wav</VoiceFile>
		<RecipientsCount>3</RecipientsCount>
		<CallerPhonenumber>2123456789</CallerPhonenumber>
		<Credits>6</Credits>
		<StampToSend>05-16-2011 5:44 PM</StampToSend>
		<PhoneNumbers>
			<PhoneNumber>2123456787</PhoneNumber>
			<PhoneNumber>2123456788</PhoneNumber>
		</PhoneNumbers>
		<LocalOptOuts>
			<PhoneNumber>2123456786</PhoneNumber>
		</LocalOptOuts>
		<GlobalOptOuts>
			<PhoneNumber>2123456785</PhoneNumber>
		</GlobalOptOuts>
		<Groups>
			<Group>Honey lovers</Group>
		</Groups>
	</Entry>
</Response>

JSON Example And Response:

curl -d 'User=winnie&Password=the-pooh&PhoneNumbers[]=2123456785&PhoneNumbers[]=2123456786&PhoneNumbers[]=2123456787&PhoneNumbers[]=2123456788&Groups[]=honey lovers&CallerPhonenumber=2123456789&VoiceFile=yourfile.wav&StampToSend=1305582245' https://app.eztexting.com/voice/messages?format=json
{
	"Response":{
		"Status":"Success",
		"Code":201,
		"Entry":{
			"ID":828,
			"Name":"My voice campaign",
			"VoiceFile":"yourfile.wav",
			"CallerPhonenumber":"2123456789",
			"RecipientsCount":3,
			"Credits":6,
			"StampToSend":"05-16-2011 5:44 PM",
			"PhoneNumbers":[
				"2123456787",
				"2123456788"
			],
			"LocalOptOuts":[
				"2123456786"
			],
			"GlobalOptOuts":[
				"2123456785"
			],
			"Groups":[
				"Honey lovers"
			]
		}
	}
}

Back to table of contents

Carrier Lookup

Returns the wireless carrier of a valid mobile phone number (US & Canada)

URL

https://app.eztexting.com/sending/phone-numbers/phone-number?format=format

Format & Method

Format can be either XML or JSON
HTTP Method must be GET

Parameters

User (Required) Your Ez Texting username
Password (Required) Your Ez Texting password
PhoneNumber (Required) 10 Digit Phone Number

Return Values

PhoneNumber Phone Number from the request
CarrierName Carrier name the phone number belongs to

HTTP Status Codes

200 Success
401 Unauthorized - Authentication credentials are missing or incorrect
403 Forbidden - Request is not valid. An accompanying error message explains why.
500 Internal Server Error - Something is broken. Please create a support ticket.

Sample Error Responses

<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>401</Code>
	<Errors>
		<Error>Authorization Required</Error>
	</Errors>
</Response>
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Failure</Status>
	<Code>403</Code>
	<Errors>
		<Error>PhoneNumbers: '(123)45-67' contains characters which are not digits</Error>
	</Errors>
</Response>

Successful Call & Response Samples

XML Example And Response:

curl "https://app.eztexting.com/sending/phone-numbers/2345678910?User=winnie&Password=the-pooh&format=xml"
<?xml version="1.0" encoding="UTF-8"?>
<Response>
	<Status>Success</Status>
	<Code>200</Code>
	<Entry>
		<PhoneNumber>2345678910</PhoneNumber>
		<CarrierName>ATTUS</CarrierName>
	</Entry>
</Response>

JSON Example And Response:

curl "https://app.eztexting.com/sending/phone-numbers/2345678910?User=winnie&Password=the-pooh&format=json"
{
	"Response":{
		"Status":"Success",
		"Code":200,
		"Entry":{
			"PhoneNumber":"2345678910",
			"CarrierName":"ATTUS"
		}
	}
}

Carrier Codes (United States)

ACS Wireless ACSUS
Alltel ALLTELUS
RINA/All West Wireless ALLWESTUS
EKN/Appalachian Wireless APPALACHIANUS
Arch Wireless ARCHWIRELESSUS
AT&T Wireless ATTUS
Bluegrass Cellular BLUEGRASSUS
Boost USA BOOSTUS
Cellcom CELLCOMUS
Cellular South CELLULARSOUTHUS
Centennial CENTENNIALUS
Central Wireless CENTRALUS
Amerilink CHOICEUS
Cincinnati Bell CINBELLUS
AT&T (Formerly Cingular Wireless) CINGULARUS
Cox Communications COXUS
Cricket Communications CRICKETUS
RINA/CTC Telecom-Cambridge CTCUS
Dobson DOBSONUS
RINA/Snake River PCS EAGLEUS
ECIT - Cell One of East Central IL ECITUS
Edge Wireless EDGEUS
Element Mobile ELEMENTUS
RINA/FMTC-Farmers Mutual Telephone Co. FARMERSMUTUALUS
GCI Communications GENERALCOMUS
RINA/Silverstar GOLDSTARUS
Immix Wireless/PC Management IMMIXUS
Inland Cellular INLANDUS
Iowa Wireless IOWAWIRELESSUS
Illinois Valley Cellular IVCUS
Metrocall Wireless METROCALLUS
Metro PCS METROPCSUS
Midwest Wireless MIDWESTUS
Nex-Tech Wireless NEXTECHUS
North Coast PCS NORTHCOASTUS
nTelos NTELOSUS
RINA/Nucla-Naturita Telephone Co. NUCLANATURITAUS
Pacific Bell     PACBELLUS
Plateau Telecom PLATEAUUS
Pocket Wireless POCKETUS
Revol REVOLUS
RCC/Unicel RURALCELUS
RINA/South Central SOUTHCENTRALUTAHUS
South Canaan Cell SOUTHCANAANUS
Southern Bell SOUTHWESTBELLUS
Sprint PCS SPRINTUS
Suncom SUNCOMUS
RINA/Syringa Wireless SYRINGAUS
Thumb Cellular THUMBUS
T-Mobile USA TMOBILEUS
Triton PCS TRITONPCSUS
RINA/UBET UNITAHBASINUS
United Wireless UNITEDWIRELESSUS
US Cellular USCELLULARUS
Verizon Wireless VERIZONUS
Viaero Wireless VIAEROUS
Virgin USA VIRGINUS
West Central Wireless WCENTRALUS
Western Wireless WESTERNWUS

Carrier Codes (Canada)

Fido FIDOCA
Bell Mobility BELLCA
Wind Mobile WINDCA
Telus   TELUSCA
SaskTel SASKTELCA
Virgin Canada VIRGINCA
MTS Canada MTSCA
Rogers ROGERSCA
Videotron VIDEOTRONCA