call-em-all web service / api

162
Call-Em-All Web Service / API Version 3.2.13 (6.8.2012) Revised and Updated 1 | Page Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied. Below you will find all of the information needed to allow you to Integrate your application with the Call-Em-All Voice and Text delivery platform. If you have questions or issues regarding the API or testing please use the email address [email protected] to communicate with us. Table of Contents ChangeLog .................................................................................................................................... 11 How to get started ........................................................................................................................ 16 Important Notes ........................................................................................................................... 17 End Points .................................................................................................................................... 19 Conventions Used in the Document .............................................................................................. 20 REQUIRED vs OPTIONAL vs RECCOMENDED................................................................................... 22 Function: AddNumbersToBroadcast (multiple) .............................................................................. 23 AddNumberToBroadcastRequestType.............................................................................................................. 23 AddNumberToBroadcastResponseType ........................................................................................................... 23 Function: AddNumbersToList ........................................................................................................ 25 AddNumbersToListRequestType ....................................................................................................................... 25 AddNumbersToListResponseType .................................................................................................................... 25 Function: AddNumberToBroadcast ............................................................................................... 27 AddNumberToBroadcastRequestType.............................................................................................................. 27 AddNumberToBroadcastResponseType ........................................................................................................... 27 Function: AddPersonsToList .......................................................................................................... 28 AddPersonsToListRequestType ......................................................................................................................... 28 AddPersonsToListResponseType....................................................................................................................... 28 Function: ArchiveBroadcast........................................................................................................... 29 ArchiveBroadcastRequestType ......................................................................................................................... 29

Upload: others

Post on 03-Feb-2022

13 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

1 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Below you will find all of the information needed to allow you to Integrate

your application with the Call-Em-All Voice and Text delivery platform.

If you have questions or issues regarding the API or testing please use the

email address [email protected] to communicate with us.

Table of Contents

ChangeLog .................................................................................................................................... 11

How to get started ........................................................................................................................ 16

Important Notes ........................................................................................................................... 17

End Points .................................................................................................................................... 19

Conventions Used in the Document .............................................................................................. 20

REQUIRED vs OPTIONAL vs RECCOMENDED ................................................................................... 22

Function: AddNumbersToBroadcast (multiple) .............................................................................. 23

AddNumberToBroadcastRequestType .............................................................................................................. 23

AddNumberToBroadcastResponseType ........................................................................................................... 23

Function: AddNumbersToList ........................................................................................................ 25

AddNumbersToListRequestType ....................................................................................................................... 25

AddNumbersToListResponseType .................................................................................................................... 25

Function: AddNumberToBroadcast ............................................................................................... 27

AddNumberToBroadcastRequestType .............................................................................................................. 27

AddNumberToBroadcastResponseType ........................................................................................................... 27

Function: AddPersonsToList .......................................................................................................... 28

AddPersonsToListRequestType ......................................................................................................................... 28

AddPersonsToListResponseType....................................................................................................................... 28

Function: ArchiveBroadcast........................................................................................................... 29

ArchiveBroadcastRequestType ......................................................................................................................... 29

Page 2: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

2 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

ArchiveBroadcastResponseType ....................................................................................................................... 29

Function: CancelBroadcast ............................................................................................................ 30

CancelBroadcastRequestType ........................................................................................................................... 30

CancelBroadcastResponseType ........................................................................................................................ 30

Function: CheckAccount ................................................................................................................ 31

CheckAccountRequestType ............................................................................................................................... 31

CheckAccountResponseType ............................................................................................................................ 31

Function: CheckKeywordAvailable ................................................................................................ 32

CheckKeywordAvailableRequestType ............................................................................................................... 32

CheckKeywordAvailableResponseType ............................................................................................................. 32

Function: CheckPhoneNumber ...................................................................................................... 33

CheckPhoneNumberRequestType .................................................................................................................... 33

CheckPhoneNumberResponseType .................................................................................................................. 33

Function: CreateBroadcast DEPRECATED (see ExtCreateBroadcast) ............................................... 34

CreateBroadcastRequestType ........................................................................................................................... 34

CreateBroadcastResponseType ........................................................................................................................ 34

Function: CreateDetailedBroadcast ............................................................................................... 36

CreateDetailedBroadcastRequestType ............................................................................................................. 36

CreateDetailedBroadcastResponseType ........................................................................................................... 37

Function: CreateNewList ............................................................................................................... 38

CreateNewListRequestType .............................................................................................................................. 38

CreateNewListResponseType ............................................................................................................................ 38

Function: CreatePersonID ............................................................................................................. 40

CreatePersonIDRequestType ............................................................................................................................ 40

CreatePersonIDResponseType .......................................................................................................................... 40

Function: CreateRecordingID ......................................................................................................... 42

CreateRecordingIDRequestType ....................................................................................................................... 42

CreateRecordingIDResponseType ..................................................................................................................... 42

Function: CreateTTS ...................................................................................................................... 43

Page 3: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

3 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

CreateTTSRequestType ..................................................................................................................................... 43

CreateTTSResponseType ................................................................................................................................... 43

Function: DeleteAudioLib .............................................................................................................. 44

DeleteAudioLibRequestType ............................................................................................................................. 44

DeleteAudioLibResponseType .......................................................................................................................... 44

Function: DeleteList ...................................................................................................................... 45

DeleteListRequestType ..................................................................................................................................... 45

DeleteListResponseType ................................................................................................................................... 45

Function: DeleteNumberFromBroadcast ....................................................................................... 46

DeleteNumberFromBroadcastRequestType ..................................................................................................... 46

DeleteNumberFromBroadcastResponseType ................................................................................................... 46

Function: DeleteNumbersFromBroadcast (multiple) ..................................................................... 47

DeleteNumbersFromBroadcastRequestType ................................................................................................... 47

DeleteNumbersFromBroadcastResponseType ................................................................................................. 47

Function: DeletePerson ................................................................................................................. 48

DeletePersonRequestType ................................................................................................................................ 48

DeletePersonResponseType ............................................................................................................................. 48

Function: DeletePersonFromList ................................................................................................... 49

DeletePersonFromListRequestType .................................................................................................................. 49

DeletePersonFromListResponseType ............................................................................................................... 49

Function: DeleteSchedule ............................................................................................................. 50

DeleteScheduleRequestType ............................................................................................................................ 50

DeletePersonFromListResponseType ............................................................................................................... 50

Function: ExtCreateBroadcast ....................................................................................................... 51

ExtCreateBroadcastRequestType ...................................................................................................................... 51

ExtCreateBroadcastResponseType ................................................................................................................... 52

How to Customize a Survey or provide information in response to Keypresses ........................................... 54

Function: GetAccountkeywords .................................................................................................... 56

GetAccountkeywordsRequestType ................................................................................................................... 56

Page 4: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

4 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

GetAccountKeywordsResponseType ................................................................................................................ 56

Function: GetAccountOptOuts ...................................................................................................... 57

GetAccountOptOutsRequestType ..................................................................................................................... 57

GetAccountOptOutsResponseType .................................................................................................................. 57

Function: GetAccountStatusValues ............................................................................................... 58

GetAccountStatusRequestType ........................................................................................................................ 58

GetAccountStatusResponseType ...................................................................................................................... 58

Function: GetAllBroadcastStatus ................................................................................................... 59

GetAllBroadcastStatusRequestType ................................................................................................................. 59

GetAllBroadcastStatusResponseType ............................................................................................................... 59

Function: GetAudioLib .................................................................................................................. 61

GetAudioLibRequestType .................................................................................................................................. 61

GetAudioLibResponseType ............................................................................................................................... 61

Function: GetAudioLink DEPRECATED (Broadcast ID) ..................................................................... 63

GetAudioLinkRequestType ................................................................................................................................ 63

GetAudioLinkResponseType ............................................................................................................................. 63

Function: GetAudioLinkMP3 DEPRECATED (Broadcast ID) .............................................................. 64

GetAudioLinkMP3RequestType ........................................................................................................................ 64

GetAudioLinkMP3ResponseType ...................................................................................................................... 64

Function: GetAudioLinkWAV DEPRECATED (Broadcast ID) ............................................................. 65

GetAudioLinkWAVRequestType ........................................................................................................................ 65

GetAudioLinkWAVResponseType ..................................................................................................................... 65

Function: GetAvailableCreditCardTypes ........................................................................................ 66

GetAvailableCreditCardTypesRequestType ...................................................................................................... 66

GetAvailableCreditCardTypesResponseType .................................................................................................... 66

Function: GetAvailableGroupCodes ............................................................................................... 67

GetAvailableGroupCodesRequestType ............................................................................................................. 67

GetAvailabeGroupCodesResponseType ............................................................................................................ 67

Function: GetAvailableLists ........................................................................................................... 68

Page 5: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

5 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

GetAvailableListsRequestType .......................................................................................................................... 68

GetAvailableListsResponseType ........................................................................................................................ 68

Function: GetBroadcastResult ....................................................................................................... 69

GetBroadcastResultRequestType ...................................................................................................................... 69

GetBroadcastResultResponseType ................................................................................................................... 70

Function: GetBroadcastStatusValues ............................................................................................. 72

GetBroadcastStatusValuesRequestType ........................................................................................................... 72

GetBroadcastStatusValuesResponseType......................................................................................................... 72

Function: GetCallBalance .............................................................................................................. 73

GetCallBalanceRequestType ............................................................................................................................. 73

GetCallBalanceResponseType ........................................................................................................................... 73

Function: GetCallResultValues ...................................................................................................... 74

GetCallResultValuesRequestType ..................................................................................................................... 74

GetCallResultValuesResponseType ................................................................................................................... 74

Function: GetChargeHistory .......................................................................................................... 75

GetChargeHistoryRequestType ......................................................................................................................... 75

GetChargeHistoryResponseType ...................................................................................................................... 75

Function: GetListContents ............................................................................................................. 76

GetListContentsRequestType ............................................................................................................................ 76

GetListContentsResponseType ......................................................................................................................... 76

Function: GetListIDByName .......................................................................................................... 77

GetListIDByNameRequestType ......................................................................................................................... 77

GetListIDByNameResponseType ....................................................................................................................... 77

Function: GetListsByPersonID ....................................................................................................... 78

GetListsByPersonIDRequestType ...................................................................................................................... 78

GetListsByPersonIDResponseType .................................................................................................................... 78

Function: GetOptOutList ............................................................................................................... 79

GetOptOutListRequestType .............................................................................................................................. 79

GetOptOutListResponseType ............................................................................................................................ 79

Page 6: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

6 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetPersonIDDetails ....................................................................................................... 80

GetPersonIDDetailsRequestType ...................................................................................................................... 80

GetPersonIDDetailsResponseType .................................................................................................................... 80

Function: GetPersonIDsByPhone ................................................................................................... 81

GetPersonIDsByPhoneRequestType ................................................................................................................. 81

GetPersonIDsByPhoneResponseType ............................................................................................................... 81

Function: GetPhoneNumberHistory .............................................................................................. 82

GetPhoneNumberHistoryRequestType ............................................................................................................. 82

GetPhoneNumberHistoryResponseType .......................................................................................................... 82

Function: GetSchedules ................................................................................................................. 83

GetSchedulesRequestType ................................................................................................................................ 83

GetSchedulesResponseType ............................................................................................................................. 83

Function: GetSMSInbox ................................................................................................................. 85

GetSMSInboxRequestType ................................................................................................................................ 85

GetSMSInboxResponseType ............................................................................................................................. 85

Function: GetSMSOptIns ............................................................................................................... 87

GetSMSOptInsRequestType .............................................................................................................................. 87

GetSMSOptInsResponseType ............................................................................................................................ 87

Function: GetSMSResultValues ..................................................................................................... 88

GetSMSResultValuesRequestType .................................................................................................................... 88

GetSMSResultValuesResponseType .................................................................................................................. 88

Function: InsertCustomCall ........................................................................................................... 89

InsertCustomCallRequestType .......................................................................................................................... 89

InsertCustomCallResponseType ........................................................................................................................ 89

Function: InsertOptOut ................................................................................................................. 91

InsertOptOutRequestType ................................................................................................................................ 91

InsertOptOutResponseType .............................................................................................................................. 91

Function: LinkKeywordToList ........................................................................................................ 92

LinkKeywordToListRequestType ....................................................................................................................... 92

Page 7: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

7 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

LinkKeywordToListResponseType ..................................................................................................................... 92

Function: ProvideAudio ................................................................................................................. 93

ProvideAudioRequestType ................................................................................................................................ 93

ProvideAudioResponseType ............................................................................................................................. 93

Function: RenameList .................................................................................................................... 94

RenameListRequestType ................................................................................................................................... 94

RenameListResponseType ................................................................................................................................ 94

Function: RetrieveAudio ............................................................................................................... 95

RetrieveAudioRequestType ............................................................................................................................... 95

RetrieveAudioResponseType ............................................................................................................................ 95

Function: RetrieveRecordingIDs .................................................................................................... 96

RetrieveRecordingIDsRequestType ................................................................................................................... 96

RetrieveRecordingIDsResponseType ................................................................................................................ 96

Function: ScheduleDaily ................................................................................................................ 98

ScheduleDailyRequestType ............................................................................................................................... 98

ScheduledailyResponseType ............................................................................................................................. 99

Function: ScheduleWeekly .......................................................................................................... 100

ScheduleWeeklyRequestType ......................................................................................................................... 100

ScheduledailyResponseType ........................................................................................................................... 101

Function: SendOptInvitation ....................................................................................................... 102

SendOptInvitationRequestType ...................................................................................................................... 102

SendOptInvitationResponseType .................................................................................................................... 102

Function: UpdateAccountInfo ..................................................................................................... 103

UpdateAccountInfoRequestType .................................................................................................................... 103

UpdateAccountInfoResponseType .................................................................................................................. 103

Function: UpdateCreditCard ........................................................................................................ 104

UpdateCreditCardRequestType ...................................................................................................................... 104

UpdateCreditCardResponseType .................................................................................................................... 104

Function: UpdatePersonID .......................................................................................................... 106

Page 8: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

8 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

UpdatePersonIDRequestType ......................................................................................................................... 106

UpdatePersonIDResponseType ....................................................................................................................... 106

Function: UpdateSMSInboxStatus ............................................................................................... 107

UpdateSMSInboxStatusRequestType.............................................................................................................. 107

UpdateSMSInboxStatusResponseType ........................................................................................................... 107

Function: WB_CreateAccount RESTRICTED USE........................................................................... 108

WB_CreateAccountRequestType .................................................................................................................... 108

WB_CreateAccountResponseType .................................................................................................................. 108

Function: WB_FundAccount RESTRICTED USE ............................................................................ 110

WB_FundAccountRequestType....................................................................................................................... 110

WB_FundAccountResponseType .................................................................................................................... 110

Function: WBCreateAccount RESTRICTED USE / DEPRECATED ..................................................... 111

WBCreateAccountRequestType ...................................................................................................................... 111

WBCreateAccountResponseType.................................................................................................................... 111

Function: WBFundAccount RESTRICTED USE / DEPRECATED ....................................................... 113

WBFundAccountRequestType ........................................................................................................................ 113

WBFundAccountResponseType ...................................................................................................................... 113

Function: WBPreVerifyAccount RESTRICTED USE / DEPRECATED ................................................. 114

WBPreVerifyAccountRequestType .................................................................................................................. 114

WBPreVerifyAccountResponseType ............................................................................................................... 114

Function: WBUDIDLookup RESTRICTED USE / DEPRECATED ......................................................... 115

WBUDIDLookupRequestType .......................................................................................................................... 115

WBUDIDLookupResponseType ....................................................................................................................... 115

Perl Example ............................................................................................................................... 116

ExtCreateBroadcast.pl ..................................................................................................................................... 116

PHP Example............................................................................................................................... 118

ExtCreateBroadcast.php ................................................................................................................................. 118

CheckAccount.php .......................................................................................................................................... 120

Python Examples ........................................................................................................................ 120

Page 9: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

9 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

CheckAccount.py ............................................................................................................................................. 120

ExtCreateBroadcast.py (with Proxy) ............................................................................................................... 122

.................................................................................................................. 122

CheckAccount.py ............................................................................................................................................. 123

.................................................................................................................. 123

GetbroadcastResult.py .................................................................................................................................... 124

.................................................................................................................. 124

Bash + cURL Example .................................................................................................................. 125

GetListContents.sh .......................................................................................................................................... 125

VBA Example .............................................................................................................................. 126

C++ Example ............................................................................................................................... 129

Visual Studio VB.net & C# Example ............................................................................................. 132

Step 1 Creating the Project ............................................................................................................................. 133

Step 2 Build the Form ...................................................................................................................................... 134

Step 3 Add the Web Reference ....................................................................................................................... 135

C#..................................................................................................................................................................... 140

......................................................................................................................................................................... 140

VB.Net ............................................................................................................................................................. 141

ErrorCodes and ErrorMessages ................................................................................................... 143

Extended Descriptions ................................................................................................................ 144

audioID ............................................................................................................................................................ 144

broadcastID ..................................................................................................................................................... 144

broadcastType ................................................................................................................................................. 144

Page 10: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

10 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

callerID ............................................................................................................................................................ 145

commaDelimitedPhoneNumbers .................................................................................................................... 145

listID ................................................................................................................................................................ 146

launchDateTime .............................................................................................................................................. 146

messageID ....................................................................................................................................................... 146

messageIDVM ................................................................................................................................................. 146

personID .......................................................................................................................................................... 146

phoneNumberCSV ........................................................................................................................................... 147

phoneNumberSource ...................................................................................................................................... 147

pin .................................................................................................................................................................... 147

smsMsg............................................................................................................................................................ 148

TTSText ............................................................................................................................................................ 148

username ........................................................................................................................................................ 148

Text to Speech ............................................................................................................................ 149

Available Voices .............................................................................................................................................. 149

Examples of speaking specific data-types ....................................................................................................... 149

Special Pronunciations (Phonetic Spelling) ..................................................................................................... 150

Inserting Pauses .............................................................................................................................................. 153

Prosody - Changing the pitch, range, rate and volume ................................................................................... 153

Staging Considerations ................................................................................................................ 155

SMS .................................................................................................................................................................. 155

Voice ................................................................................................................................................................ 155

How Does SMS work at Call-Em-All ............................................................................................. 156

HOWTO-SMS .............................................................................................................................. 158

Enabling Text on an Account ........................................................................................................................... 158

How to Opt People in ...................................................................................................................................... 160

The 10,000 foot view .................................................................................................................. 162

Page 11: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

11 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

ChangeLog

3.2.13 – 5/2/2012

New function GetPhoneNumberHistory retrieve all past calls for a number

Added startDate/stopDate search filters to GetAccountOptOuts, GetOptOutList, GetSMSInbox, GetSMSOptIns

Added startDate/stopDate search filters to GetAllBroadcastStatus, GetCallBalance, GetChargeHistory

Display "Orphaned" opt-ins that no longer belong to a group in GetSMSOptIns

Added new Restricted function WB_CreateAccount and WB_FundAccount

New function GetListsByPhone to show all lists that a phone number belongs to

Added ListID to results of GetListContents

Added new Return Detail array to AddNumbersToList, also return the ListID for asynch calls

Now return broadcastID in results of AddNumberToBroadcast, AddNumbersToBroadcast

Now return listID in results of AddPersonsToList

Now return broadcastID in results of AudioSalesCheck

Now return broadcastID in results of ArchiveBroadcast

Now return broadcastID in results of CancelBroadcast

Now return username in results of CheckAccount

Now return keyword in results of CheckKeywordAvailable

Now return phonenumber in results of CheckPhonenumber

Now return listID in results of DeleteList

Now return broadcastID, phoneNumber in results of DeleteNumberFromBroadcast

Now return personID in results of DeletePerson

Now return personID, listID in results of DeletePersonFromList

Now return jobName in results of DeleteSchedule

Now return listID in results of GetListContents

Now return listname in results of GetListIDByName

Now return personID in results of GetListsByPersonID

Now return personID in results of GetPersonIDDetails

Now return phonenumber in results of GetPersonIDsByPhone

Now return phonenumber in results of InsertOptOut

Now return listID, Keyword in results of LinkKeywordToList

Now return audioID in results of RetrieveAudio

Now return BroadcastName in results of ScheduleDaily

Now return BroadcastName in results of ScheduleWeekly

Now return invitePhoneNumber in results of SendOptInvitation

Now return cardNumber in results of UpdateCreditCard

Now return broadcastID in results of GetBroadcastResult

Now return AudioDescription in results of ProvideAudio

Now return AudioID in results of DeleteAudioLib

Added secure HTML access point for Audio retrieval

Added SMSname, Firstname, LastName, TimeZoneOffset, ObservesDST, Phone, Email to response data from CheckAccount

WB_CreateAccount and WB_FundAccount now suport AES encryption to verify authenticity of transactions

CreateTTS can now return WAV or MP3 results

Added support for BroadcastTimeZone in ExtCreateBroadcast

Added support for ad-hoc phone numbers via commaDelimitedPhoneNumbers in scheduleWeekly and scheduleDaily

Added Return of SMSMsg to GetBroadcastResult

GetSMSInbox can now also be filtered by phoneNumber

3.2.12 – 2/12/2012

New function GetSchedules, retrieve all schedules for an account

New Function DeleteSchedule, delete a schedule that we created with Schedule(Daily/Weekly)

New Function CreateRecordingID (can give instruction to person to record) does not need a broadcast

New Function RetrieveRecordingIDs - List recording ID's that have not had messages recorded yet

New Function GetSMSInboxStatus - Returns the different status values that an SMSInbox message can be in

New Function GetSMSMessageTypes - Enumerates the different types of messages that are in the SMSInbox

New Function UpdateSMSInboxStatus - mark messages as read, un-read, and deleted

Added startDate and stopDate filters to GetAccountOptOuts

Added startDate and stopDate filters to GetOptOutList

Added startDate and stopDate filters to GetSMSInbox

Added startDate and stopDate filters to GetSMSOptIns

Corrected issue where audio files were "locked" when broadcasts were going out

Added startDate and stopDate filters to GetChargeHistory

Added startDate and stopDate filters to GetCallBalance

Page 12: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

12 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Added startDate and stopDate filters to GetAllBroadcastStatus

3.2.11 – 11/13/2011

New function to be used on integrations to allow support of Sales Introductions.. AudioSalesCheck

New function ScheduleDaily to set calls to occur every X days with options for repeating (reminders)

New function ScheduleWeekly to set calls to occur every X weeks on specific days (ie Tuesday and Friday) at 4:00pm

New function SendOptInvitation to send an invite to an SMS User to join a group

ExtCreateBroadcast can now set a throttle value for a broadcast

ExtCreateBroadcast can specify answerhandling. Force Ans machine behavior or live answer reguardless

New function ArchiveBroadcast moves BC out of results (space and size management of result sets)

Added more backend logging of HTTP Context and Environment, for Proxies handle the x-forwarded-for

Support for widget joining list “0” or everyone via top level keyword

Standardized all dates returned so that they can be parsed by SQL etc..

Code Cleanup and Refactoring with ReSharper R#

Fixed issues with Large high bitrate MP3 files consuming too much memory and failing

Corrected issue in CreatePersonID to handle null secondary and tertiary numbers

New function LinkKeyWordToList to manage opt-ins for SMS 3.2.10 – 8/04/2011

ExtCreateBroadcast now supports broadcast Types 4 and 5 for combination broadcasts

Added “actualCallUnitsUsed” to GetAllBroadcastStatus

Added MaxCallUnitsUsed and ActualCallUnitsUsed to GetBroadcastResult

Added Function GetSMSInbox to pull responses, join requests etc from SMS broadcasts

Added function CheckPhoneNumber

Added “SMSJoinKey” to results of WBCreateAccount

Provide more detail on a callUnitsException (was returning -1)

RetrieveAudio now allows message retrieval even when account is past/due or in jeopardy

Fixed issues with VBR (variable bit rate) MP3’s

Added “sortField” to GetAllBroadcastStatus (def=Broadcast Date, 1 – Broadcast creation date)

Added “CreateTimeStamp” to GetAllBroadcastStatus

Added Function ArchiveBroadcast to manage completed broadcasts

FIX: GetAllBroadcastStatus – return dates/times in Users TimeZone

FIX: What callerID to use for WhiteBox customer set during WBCreateAccount

FIX: combination of Raw AU files and SUN AU files caused issues when trying to play or concatenate

Added “userComment” to ProvideAudio for more detailed AudioLibrary data

FIX: issue where tempBroadcastID was left in broadcastID if no voice records were found on combo broadcast

FIX: RetrieveAudio performs more exhastive audio ownership checks

3.2.9 – 6/09/2011

Added function AddPersonsToList

Added function CreatePersonID

Added function GetListsByPersonID

Added function GetPersonIDDetails

Added function GetPersonIDsByPhone

Modified UpdateAccountInfo: changed multiple fields to optional, will update only if data provided now can also update the Pin (field newPin) and can update TimeZone and DST flag

Added function WBUDIDLookup to support whitebox customers 3.2.8 – 5/30/2011

Added function GetListIDByName

Added function WBCreateAccount

Added function WBFundAccount

Added function WBPreVerifyAccount

Added answerHandling to ExtCreateBroadcast 0-Automatically Determine, 1-Force Live answer, 2-Force answering machine

Added function addNumbersToBroadcast (Multiple adds at one time)

Added function deleteNumbersFromBroadcast (Multiple deletes at one time)

Page 13: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

13 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

3.2.7 – 4/19/2011

Added function CheckKeywordAvailable Added surveyOptions array to control call more tightly in ExtCreateBroadcast

Updated UpdateCreditCard function

Fixed RetrieveAudio to properly return mp3 as well as wav and retrieve the length

Added throttle to ExtCreateBroadcast to allow user to set MAX Simultaneous calls at one time

Added first and last name to failed numbers results

Added support for new pricing of Text/SMS as ½ credit

Added back end logging of full request and response. Prepare for user queries/debugging.

Added fields to CreateTTS (IsSalesIntro, IsFavorite , AudioDescription)

CheckAccount now returns more information about account: CallerID, CallingWindowStart, CallingWindowStop, ContinueOnNextDay, TimeZone, CallRetries, MaxMessageLength, CallThrottle

Added LinkKeywordToList function for SMS Opt-Ins

CreateNewList can now specify an AutoReplyMessage if using the list for SMS Opt Ins

3.2.6 – 3/06/2001

Added C++ example to document

Added proxy examples in Python

Added function RetrieveAudio

Added field AudioLength to ProvideAudio function

3.2.5 – 2/26/2011

Added support to return MaxMessageLength, MaxCallUnitsUsed in ExtCreateBroadcast

Added message length support to CreateTTS 3.2.4 – 2/21/2011

Fixed bug in GetBroadcastResult no longer returns empty array for SMS broadcast values

FileUploadError structure now contains the offending phone number

New error type for rejected phone numbers added for SMS broadcast where the phonenumber has not Opted in to receive SMS. ErrorCode=7, "SMS Broadcast selected, but number not OPTED-IN."

3.2.3 – 2/20/2011

Added SMSBroadcastID to ExtCreateBroadcast (broadcastID was incorrect value when SMS broadcast type was specified)

GetAllBroadcastStatus now supports SMS broadcasts

Added GetCallResultValues

Added GetSMSResultValues

Added Code sample for VBA

Added Docs Staging Considerations, How Does SMS work at Call-Em-All, and HOWTO-SMS 3.2.2 – 2/17/2011

Advanced client logging by IP address etc

Implemented new exception for SMS broadcasts that have no valid opt-ins in ExtCreatBroadcast

Added Code samples Python, Bash+cURL

“How to Get Started”, “Protocols and Specifications”, “End Points”, “Conventions Used in this Document” and “Required vs Optional vs reccomended” were all added to the Documentation

3.1 – 2/11/2011

Fixed typo changed brodcastdetail -> broadcastdetail in GetBroadcastResultResponseType

Added function GetAudioLib

Implemented tbAPIErrorCodes and standardized all error codes and reporting

Added support for TTS in ExtCreateBroadcast

Added support for delimited data in commaDelimitedPhoneNumbers can supply multiple values such as first/last name, secondary/tertiary phone numbers, notes.

Added functions AddNumberToBroadcast and DeleteNumberFromBroadcast

Corrected issue where returned times were in CST instead of the users TimeZone.

Moved all application settings to Database to make releases easier and to be able to update content dynamically.

Added function ProvideAudio

Page 14: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

14 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Page 15: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

15 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

3.0 – 1/1/2011

Upgrade backend audio processing to use AlvasAudio, removed dependancies on Lame, LibSampleRate, MadLib, Aumpel, etc

Implemented IsAPIAuthorized, IP Whitelisting

Extended InsertCustomCall to send TTS messages

Enhanced Error and Usage logging

Added Function AddNumberToBroadcast

Added Function CreateTTS

Added function UpdateAccountInfo

Added function UpdateCreditCard

Added Function DeleteAudioLib

Added function GetSMSOptIn (all or by listID)

Added Function DeletePerson

Added Function Get AudioLib

Added Function GetAudioLinkMP3/WAV

Added Function GetCallBalance

Added Function GetCallResultValues

Added Function GetChargeHistory

Added Function GetOptOutList

Added Function GetSMSOptIns 2.0 Considered Intial Release

CancelBroadcast

CreateBroadcast

GetBroadcastResult

InsertCustomCall

Page 16: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

16 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

How to get started

You need to have an existing account, If you do not have an account then please visit our site at

http://www.call-em-all.com and create a new free trial account. Look in the bottom left corner of the

screen for :

Then when you are logged in, browse to http://www.call-em-all.com/dev or look for the Developer

portal link at the bottom of the screen:

From this point select “Get API Authorization” and fill out the contact form where you will tell a little

about yourself and what your application is. We will use the data on the form to create you a staging

account to Develop and Test your application.

Once you have your application working, you can email us at [email protected] and request to have

your account “certified” or authorized to use the production system.

The application that you have developed can be immediately used to access our production system

with the same credentials as you created above, the only change will be that the EndPoint will

change from Staging to production (see End Points below) so it is reccomended that you use a variable

in your code to represent the EndPoint so only one change is needed to move from Staging to

Production.

Page 17: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

17 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Important Notes

If you plan to be working with TEXT or SMS Messaging…

Please see the section of our Documentation called

STAGING CONSIDERATIONS

There are a few differences that are outlined on how the system behaves In staging vs production, and a few minutes of reading could save

you several hours of frustration and confusion

Page 18: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

18 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Protocols and specifications We support both SOAP 1.1 and SOAP 1.2 requests.

For implementation help please see our code examples in this document or visit:

http://www.call-em-all.com/dev/code-samples.aspx

Page 19: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

19 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

End Points

Staging Environment:

HTTP: http://staging-api.call-em-all.com/webservices/ceaapi_v2.asmx

Secure/SSL (Recommended): https://staging-api.call-em-all.com/webservices/ceaapi_v2.asmx

Production Environment:

HTTP: http://api.call-em-all.com/webservices/ceaapi_v2.asmx

Secure/SSL (Recommended): https://api.call-em-all.com/webservices/ceaapi_v2.asmx

Page 20: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

20 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Conventions Used in the Document

All functions are accessed by passing in a Request Structure and the output or result is returned in a Reponse

Structure.

The naming conventions are pretty straight forward. A function named CreateTTS would be passed data by

filling out the structure CreateTTSRequestType and when consumed, would return its results in

CreateTTSResponseType.

For example in C# the RequestType for CreateTTS would be:

public struct CreateTTSRequestType

{

public string username; //Required - The CEA Username of the account

public string pin; //Required - The CEA Pin of the account

public string TTSText; //Required - The Text to Speech to say

public string RequestedAudioFormat; //Optional - Default=0 [0-Wav,1-MP3] (currently only supports Wav)

public string SaveInLibrary; //Optional - Default=0 [0=Do Not Save, 1=Save and return AudioID]

}

In our documentation, this would be shown as:

The Request Object to be passed in: CreateTTSRequestType

Parameter Data Type Description / Values Required?

username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

TTSText String The text you wish to have converted to speech Required

RequestedAudioFormat Numeric String Def=0; 0-WAV, 1-MP3 Optional

SaveInLibrary Numeric String Save in the audioLibrary Def=0; 0-No, 1-Save Optional

Our API uses Strings for a majority of its parameters, so we will try to describe the expected data in the Data

Type. For example, our usernames are numeric sequences, and in most cases we ask the user to use a

phonenumber as their username (something they can easily remember). We use numeric because if the user

wants to log in and create a broadcast over the phone, it is much easier to key in a number than work out

number to character conversions. So while our system “can” use alphanumeric and special characters, we use

business logic to restrict it to numeric only.

For other fields, String is just what you would expect. In fact, for the CreateTTS function special markup can be

used in the TTSText parameter to make sure that the voice speaking your text is saying what you want (Dates,

Times, Dollars, Ordinals and of course Phonenumbers) see the addendum on Text to Speech for more information.

Page 21: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

21 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Once you have populated your Request and submitted it to our API, we will process it and send you back a

Response. The example response in C# looks like this:

public struct CreateTTSResponseType

{

public int errorCode; // Returns 0 if the function was successful,

// otherwise it will return an error code

public string errorMessage; // The error message cooresponding with the error code

public byte[] TTSAudio; // Formatted audio stream.

public string AudioID; // Returned when SaveInLibrary = 1

}

We would describe this in our documentation as:

The Response Object returned by our web service: CreateTTSResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

byte[] TTSAudio Binary The audio stream, save to file or pass to browser to play

AudioID String Returns the audioID for reference when saved in library

In this case, we are returning several types of data. The errorcode (an integer), the human readable

errorMessage, a binary message and an audioID.

Currently we only return binary messages that contain Audio Data. Depending on the format you have

selected, you would be able to save this binary message directly to disk and name it accordingly and play the

audio, or in a web environment, send out a content header (ie audio/wav) and dump out the binary to allow a

user to listen to the audio.

For reference, we have included sample code to get your started in PERL, PHP, and .NET C#. We plan to add

Python soon and .NET VB if we get any requests.

Page 22: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

22 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

REQUIRED vs OPTIONAL vs RECCOMENDED

Required Parameters (such as Username or Pin) are neccesary for the method to complete, if a required

parameter is left empty/blank/null then the API will return an errorcode and errormessage describing the

parameter that is missing. For a full listing see errorcodes and errormessages

Examples:

errorCode errorMessage 160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

162 Required parameter 'broadcastID' is missing

Optional Parameters These parameters will have default values specified in the documentation, if you want to

take the default, you can either send a null string or not pass the parameter at all. If the optional parameter is

specified and it does not match the requested input type or contents, an errorcode and errormessage

describing the expected input will be returned.

Examples:

errorCode errorMessage 126 Unexpected value for surveyResultFilter; Expecting *,0,1,2,3,4,5,6,7,8, or 9

112 Unexpected value for checkMaxPhoneCount; Expecting 0 or 1

119 launchDateTime must be in MM/DD/YYYY HH:MM AM/PM format

Recommended Parameters These parameters are usually for describing data that you are sending via the API,

the best example would be when you are using ProvideAudio to upload audio files to be used on upcoming

broadcasts. These files are stored in your audio library and we assign them an audioID, without your

description it will be difficult to manage which file is which.

Page 23: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

23 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: AddNumbersToBroadcast (multiple)

Add MULTIPLE new phonenumbers to an existing Broadcast

This function accepts 1 parameter, the request, and returns a response. Function Call: AddNumbersToBroadcastResponseType AddNumbersToBroadcast(AddNumbersToBroadcastRequestType myRequest)

The Request Object to be passed in:

AddNumberToBroadcastRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

broadcastID Numeric String The BroadcastID to add the numbers to Required

NumbersArray[] numbersToAdd Array Array of phoneNumbers to add Required

NumbersArray Type:

Parameter Data Type Required?

phoneNumber Numeric String Required

firstName String Optional

lastName String Optional

The Response Object returned by our web service:

AddNumberToBroadcastResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it

will return an error code

errorMessage String The error message corresponding with the error code

ResultsArray[] addResults Array Results of each addition request

ResultsArray Type:

Parameter Data Type Description / Values

phoneNumber Numeric String The phoneNumber

errorCode Integer Result of attempted add

errorMessage String Error message

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

101 PhoneNumber does not contain 10 digits

102 PhoneNumber is not in the continental US, Puerto Rico, Hawaii, or Canada

103 PhoneNumber is on the Call-em-all Opt Out list

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

106 Account does not have enough credits

107 Account is not authorized to use the CEAAPI

132 Access denied - broadcastID does not belong to this account

135 BroadcastID is not numeric

136 Broadcast is not active

Page 24: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

24 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Page 25: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

25 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: AddNumbersToList

Return status of addition of numbers to an existing list

This function accepts 1 parameter, the request, and returns a response. Function Call: AddNumbersToListResponseType AddNumbersToList(AddNumbersToListRequestType myRequest)

The Request Object to be passed in:

AddNumbersToListRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

listID Numeric String 0 – Everyone, N – Specific list to add to

Blank/Null defaults to Everyone Required

NumbersToAdd array of

ListAddDetailData[] Array Persons to add Required

ListAddDetailData Type:

Parameter Data Type Required?

PrimaryPhone String (phonenumber) Required

FirstName String Optional

LastName String Optional

Notes string Optional

SecondaryPhone String (phonenumber) Optional

TertiaryPhone String (phonenumber) Optional

The Response Object returned by our web service:

AddNumbersToListResponseType

Parameter Data Type Description / Values

errorCode Integer

Returns 0 if the function was successful, otherwise it

will return an error code

NOTE: This can return 0 and still have failed inserts, you

need to check the failed Inserts array

errorMessage String The error message corresponding with the error code

FailedInserts array of

FailedRecordData[] Array Error results

FailedRecordData Type:

Parameter Data Type Description / Values

EntryNumber Integer The zero based number of the entry that failed

errorMessage String The error message

Page 26: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

26 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

106 Account does not have enough credits

107 Account is not authorized to use the CEAAPI

140 ListID specified was not found

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 27: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

27 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: AddNumberToBroadcast

Return status of addition of a SINGLE phoneNumber to an existing broadcast

This function accepts 1 parameter, the request, and returns a response. Function Call: AddNumberToBroadcastResponseType AddNumberToBroadcast(AddNumberToBroadcastRequestType myRequest)

The Request Object to be passed in:

AddNumberToBroadcastRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

broadcastID Numeric String The broadcastID to add the number to Required

phoneNumber Numeric String The phoneNumber to add Required

firstName String Displayed on results Optional

lastName String Displayed on results Optional

The Response Object returned by our web service:

AddNumberToBroadcastResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it

will return an error code

errorMessage String The error message corresponding with the error code

broadcastID String The broadcastID submitted

phoneNumber String The phoneNumber submitted

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

101 PhoneNumber does not contain 10 digits

102 PhoneNumber is not in the continental US, Puerto Rico, Hawaii, or Canada

103 PhoneNumber is on the Call-em-all Opt Out list

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

106 Account does not have enough credits

107 Account is not authorized to use the CEAAPI

132 Access denied - broadcastID does not belong to this account

135 BroadcastID is not numeric

136 Broadcast is not active

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

163 Required parameter 'phoneNumber' is missing

Page 28: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

28 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: AddPersonsToList

Return status of addition of a multiple PersonID’s to a List

This function accepts 1 parameter, the request, and returns a response. Function Call: AddpersonsToListResponseType addPersonsToList(AddPersonsToListRequestType myRequest)

The Request Object to be passed in:

AddPersonsToListRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

listID Numeric String The listID to add the Persons to Required

AddPersonsToListDetailData[] PersonIDsToAdd

Array Required

AddPersonsToListData Type:

Parameter Data Type Description / Values

personID Numeric String The personID

The Response Object returned by our web service:

AddPersonsToListResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it

will return an error code

errorMessage String The error message corresponding with the error code

PersonsFailedRecordData[] FailedInserts

Array

PersonsFailedRecordData Type:

Parameter Data Type Description / Values

personID Numeric String The personID

errorMessage String Error message

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

101 PhoneNumber does not contain 10 digits

102 PhoneNumber is not in the continental US, Puerto Rico, Hawaii, or Canada

103 PhoneNumber is on the Call-em-all Opt Out list

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

106 Account does not have enough credits

107 Account is not authorized to use the CEAAPI

132 Access denied - broadcastID does not belong to this account

135 BroadcastID is not numeric

136 Broadcast is not active

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

163 Required parameter 'phoneNumber' is missing

Page 29: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

29 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: ArchiveBroadcast

Archives a broadcast immediately instead of waiting 90 days, used to keep lists smaller

This function accepts 1 parameter, the request, and returns a response. Function Call: ArchiveBroadcastResponseType ArchiveBroadcast(ArchiveBroadcastRequestType myRequest)

The Request Object to be passed in:

ArchiveBroadcastRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

broadcastID Numeric String The broadcastID to archive Required

The Response Object returned by our web service:

ArchiveBroadcastResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it

will return an error code

errorMessage String The error message corresponding with the error code

broadcastID String The broadcastID that was specified

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

101 PhoneNumber does not contain 10 digits

102 PhoneNumber is not in the continental US, Puerto Rico, Hawaii, or Canada

103 PhoneNumber is on the Call-em-all Opt Out list

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

106 Account does not have enough credits

107 Account is not authorized to use the CEAAPI

132 Access denied - broadcastID does not belong to this account

135 BroadcastID is not numeric

136 Broadcast is not active

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 30: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

30 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: CancelBroadcast

CancelBroadcast allows the user to Cancel one of their existing active broadcast.

This function accepts 1 parameter, the request, and returns a response. Function Call: CancelBroadcastResponseType CancelBroadcast(CancelBroadcastRequestType myRequest)

The Request Object to be passed in:

CancelBroadcastRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

broadcastID Numeric String The CEA Broadcast ID to cancel Required

The Response Object returned by our web service:

CancelBroadcastResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

broadcastID Numeric String The broadcastID requested to cancel

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

131 broadcastID not found

132 Access denied - broadcastID does not belong to this account

135 BroadcastID is not numeric

136 Broadacst is not active

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

162 Required parameter 'broadcastID' is missing

Page 31: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

31 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: CheckAccount

Get account status

This function accepts 1 parameter, the request, and returns a response. Function Call: CheckAccountResponseType CheckAccount(CheckAccountRequestType myRequest)

The Request Object to be passed in:

CheckAccountRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

The Response Object returned by our web service:

CheckAccountResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise

it will return an error code

errorMessage String The error message corresponding with the error code

accountStatus Integer 0 if in good standing, 104-Bad user,105-inactive

106-credit issues,107-blocked from API

accountStatusDescription String Text of account status

CallBalance Integer Current Call Balance

PendingCallbalance Integer Total of outstanding broadcasts

AvailableCallUnits Integer Available for calls/texts

CallerID String Default CallerID

CallingWindowStart String Earliest to make calls

CallingWindowStop String When calls stop processing

ContinueOnNextDay String Do calls resume next day if did not complete

TimeZone String Accounts timezone

CallRetries String Default how many retries to attempt

MaxMessageLength String Account Max message length

CallThrottle String Max simultaneous calls

username Numeric String The requested Username

SMSName String The top-level SMS keyword for the account

FirstName String Account First name

Lastname String Account Last name

ObservesDST String 1-yes, 0-no

TimeZoneOffset String Hours offset from CST (Server time)

Phone String Users Phone number

Email String System email on file for customer

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

161 Required parameter 'pin' is missing

162 Required parameter 'broadcastID' is missing

Page 32: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

32 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: CheckKeywordAvailable

Checks if a keyword is available for use

This function accepts 1 parameter, the request, and returns a response. Function Call: CheckKeywordAvailableResponseType CheckKeywordAvailable(CheckKeywordAvailableRequestType myRequest)

The Request Object to be passed in:

CheckKeywordAvailableRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

keyword String The keyword to check Required

The Response Object returned by our web service:

CheckKeywordAvailableResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise

it will return an error code

errorMessage String The error message corresponding with the error code

keyword String The keyword that was checked

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

161 Required parameter 'pin' is missing

169 Requested keyword is not available

198 Cannot check the availability of another Accounts sub-keywords

Page 33: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

33 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: CheckPhoneNumber

Check if system can call a number

This function accepts 1 parameter, the request, and returns a response. Function Call: CheckPhoneNumberResponseType CheckPhoneNumber(CheckPhoneNumberRequestType myRequest)

The Request Object to be passed in:

CheckPhoneNumberRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

phonenumber Numeric String The phoneNumber to check Required

The Response Object returned by our web service:

CheckPhoneNumberResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise

it will return an error code

errorMessage String The error message corresponding with the error code

Phonenumber Numeric String The phonenumber that was checked

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

162 Required parameter 'broadcastID' is missing

163 Required parameter phoneNumber is missing

101 PhoneNumber does not contain 10 digits

102 PhoneNumber is not in the continental US, Puerto Rico, Hawaii, or Canada

Page 34: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

34 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: CreateBroadcast DEPRECATED (see ExtCreateBroadcast)

CreateBroadcast is the only function call required to launch a broadcast. A single call can include many phone numbers to call, the type of

call (survey or announcement), and the date/time to make the calls. The return object will include a toll free number to call and a PIN code

to record a message if a message was not provided, along with confirmation information regarding the phone numbers supplied.

This function accepts 1 parameter, the request, and returns a response. Function Call: CreateBroadcastResponseType CreateBroadcast(CreateBroadcastRequestType myRequest)

The Request Object to be passed in:

CreateBroadcastRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

broadcastType Numeric String 1=Announcement; 2=Survey Required

phoneNumberSource Numeric String 1=SavedList; 2=CSV; 3=Comma Delimited String of

Phone Numbers Required

broadcastName String The name of the broadcast Required

listID Numeric String The listID to send calls to Optional

phoneNumberCSV Byte[] The CSV file containing the phone numbers to

call. Required if phoneNumberSource=2 Optional

messageID

*supports audioID values Numeric String

The broadcastID corresponding to the LIVE ANSWER

message to use; Pass in a value if you would

like to use a message from a previous broadcast.

Optional

messageIDVM

*supports audioID values Numeric String

The broadcastID corresponding to the VOICE MAIL

message to use; Only applicable for survey

broadcasts. Pass in a value if you would like

to use a message from a previous broadcast.

Optional

launchDateTime Date String Default=current date/time; The date/time to

broadcast in MM/DD/YYYY HH:MM AM/PM format Optional

checkCallingWindow Numeric String Default=1; 0=Bypass calling window check;

1=Enforce calling window check; Optional

callerID Numeric String Optional - Default=account setting; The caller

ID number to display Optional

commaDelimitedPhoneNumbers String Optional - set phoneNumberSource = 3 to use this

instead of the byte array. Optional

* An audioID is generated when you upload Audio using ProvideAudio or when you specify to save the results in CreateTTS

The Response Object returned by our web service:

CreateBroadcastResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful,

otherwise it will return an error code

errorMessage String The error message corresponding with the error code

broadcastID String The broadcastID used to reference this broadcast

messageRecordingID String The messageRecordingID to enter when calling the 877 to record

the message for this broadcast

tollFreeNumber String The toll free number to call to record the message

goodRecordCountOnFile integer Good rec count – Default 0, populated if file used

badRecordCountOnFile integer Bad rec count – Default 0, populated if file used

duplicateRecrodCountOnFile integer Duplicate rec count – Default 0, populated if file used

totalRecordCountOnFile integer Total record count – Default 0, populated if file used

fileUploadErrors array of

FileUploadErrors[] array A list of all errors found on the file - populated if file used

Page 35: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

35 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

FileUploadErrors Type:

Parameter Data Type Comments

LineNumber Integer The line number of the error on the file

errorCode Integer The error code corresponding to the error

message

ErrorMessage String The error message

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

106 Account does not have enough call units

107 Account is not authorized to use the CEAAPI

108 MessageID is not valid

115 Unexpected value for broadcastType, Expecting 1 or 2

114 Unexpected value for checkCallingWindow; Expecting 0 or 1

116 Unexpected value for phoneNumberSource, Expecting 1 or 2

117 broadcastType=1, but phoneNumberCSV is not supplied

118 broadcastType=2, but listID is not supplied

119 Datetime must be in MMDDYYYY HH: MM AMPM format

120 Datetime must be in the future

121 launchDateTime is outside of your calling window

122 Not enough call units to launch this broadcast

123 No good records found in phoneNumberCSV

133 CallerID does not contain 10 digits

134 Caller ID number can not be a call-em-all number

137 phoneNumberSource=3, commaDelimitedPhoneNumbers not supplied

155 You specified an invalid listID

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

167 Required parameter 'broadcastType' is missing

168 Required parameter 'phoneNumberSource' is missing

169 Required parameter 'broadcastName' is missing

Page 36: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

36 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: CreateDetailedBroadcast

Features different from ExtCreateBroadcast

Can launch a broadcast with Voice/Text-to-Speech where each recipient can receive a different message.

CreateDetailedBroadcast is the function to call if not all of your numbers should receive the same message. A broadcast can include many

phone numbers to call, the type of call (survey/ announcement), and the date/time to make the calls. Unlike ExtCreateBroadcast the call has

to specify the message to be played for all recipients, either directly or by the default message. Numbers with missing audio will be omitted

from the broadcast and returned in the response’s failedTTSCallDetails field.

This function accepts 1 parameter, the request, and returns a response. Function Call: CreateDetailedBroadcastResponseType CreateDetailedBroadcast(CreateDetailedBroadcastRequestType

myRequest)

The Request Object to be passed in:

CreateDetailedBroadcastRequestType

Parameter Data Type Description /Values Required?

username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

broadcastType Numeric String 1=Announcement;

2=Survey; Required

broadcastName String The name of the broadcast Required

launchDateTime String

Default=current date+time;

The date+time to launch the broadcast

Format: MM/DD/YYYY HH:MM AM/PM

Optional

checkCallingWindow Numeric String

Default=1;

0=Bypass calling window check;

1=Enforce calling window check;

Optional

callerID Numeric String The caller ID number to display

Default=account setting; Optional

Survey[] Array of Surveyoptions Set up custom responses for *[x] keypresses Optional

Throttle Numeric String Send no more than X simultaneous calls Optional

answerHandling Numeric String

Def=0-Automatically determine

1-Assume all answers are live

2-Assume all answers are voicemail

Optional

notifyEmail String If provided send results to the email address Optional

defaultAudio DetailedBroadcastAudio default audio is used in place where audio detail

is not specified Optional

callDetails[] Array of

DetailedBroadcastContact

phone numbers to call and messages to play

Required

Page 37: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

37 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

DetailedBroadcastContact Type:

Parameter Data Type Required?

phoneNumber** String The phone number to call

firstName String Optional – the first name of the

contact.

lastName String Optional – the last name of the

contact.

messageID* String Optional - The messageID of a

previously recorded message to

use for both Live Answer and

VoiceMail.

TTSText String Optional - If not specified,

defaultTTSText will be used to

create audio Message.

DetailedBroadcastAudio Type:

Parameter Data Type Required?

messageID* String Optional - The messageID of a previously

recorded message to use for both Live

Answer and VoiceMail.

TTSText String Optional - If not specified,

defaultTTSText will be used to create

audio Message.

* An audioID is generated when you upload Audio using ProvideAudio or when you specify to save the results in CreateTTS

** Can specify additional field information by separating data with the “|” character. See CommaDelimitedPhoneNumbers

The Response Object returned by our web service:

CreateDetailedBroadcastResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

broadcastID String The broadcastID used to reference this broadcast

callDetailErrors Array of

BroadcastDetailError

A list of call details that failed to validate.

These details were not included in the broadcast.

BroadcastDetailError Type:

Parameter Data Type Comments

errorCode Integer Error code corresponding to the error message

errorMessage String Error message corresponding to the call detail

phoneNumber String The phone number that failed

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

106 Account does not have enough call units

107 Account is not authorized to use the CEAAPI

108 MessageID is not valid

115 Unexpected value for broadcastType, Expecting 1 or 2

114 Unexpected value for checkCallingWindow; Expecting 0 or 1

116 Unexpected value for phoneNumberSource, Expecting 1 or 2

117 broadcastType=1, but phoneNumberCSV is not supplied

Page 38: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

38 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

118 broadcastType=2, but listID is not supplied

119 Datetime must be in MMDDYYYY HH: MM AMPM format

120 Datetime must be in the future

121 launchDateTime is outside of your calling window

122 Not enough call units to launch this broadcast

133 CallerID does not contain 10 digits

134 Caller ID number can not be a call-em-all number

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

167 Required parameter 'broadcastType' is missing

169 Required parameter 'broadcastName' is missing

189 Unexpected value for broadcast type 0-voice, 1-SMS

193 A survey structure was submitted that had errors *See ExtCreateBroadcast

194 AudioID in survey structure is invalid

195 An invalid value specified for 'Throttle' must be null or integer

197 An invalid value for answerHandling was provided valid values are 0,1,2

Function: CreateNewList

Creates a new named list in the account

This function accepts 1 parameter, the request, and returns a response. Function Call: CreateNewListResponseType CreateNewList(CreateNewListRequestType myRequest)

The Request Object to be passed in:

CreateNewListRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

listName String The name of the List to be created Required

IsAutoReplyOn String

Def=0 No, 1=Yes If you are going to have SMS

users Opt-In to the list do you want a custom

autoreply (cost 1/2 credit per)

Optional

AutoReplyMessage String Auto reply message to SMS opt-ins if you

tie a keyword to this list. < 120 chars Optional

The Response Object returned by our web service:

CreateNewListResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

listID Numeric String The ListID of the newly created list

listName String The list name requested

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

Page 39: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

39 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 40: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

40 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: CreatePersonID

Creates a new PersonID to be used in list management

This function accepts 1 parameter, the request, and returns a response. Function Call: CreatePersonIDResponseType CreatePersonID(CreatePersonIDRequestType myRequest)

The Request Object to be passed in:

CreatePersonIDRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

CreatePersonIDDetailData[] personsToAdd

Array Required

CreatePersonIDDetailData Type:

Parameter Data Type Required?

PrimaryPhone String Required

FirstName String Optional

LastName String Optional

Notes String Optional

SecondaryPhone String Optional

TertiaryPhone String Optional

The Response Object returned by our web service:

CreatePersonIDResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it

will return an error code

errorMessage String The error message corresponding with the error code

ResultRecordData[]

InsertResults Array

ResultRecordData Type:

Parameter Data Type Required?

EntryNumber Int Zero Based number of the entry

PersonID Numeric String The PersonID assigned

errorMessage String Error message if problem inserting

PrimaryPhone String

FirstName String

LastName String

Notes String

SecondaryPhone String

TertiaryPhone String

Page 41: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

41 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 42: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

42 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: CreateRecordingID

Creates a new RecordingID to be used to create audio-files for use with the API

This function accepts 1 parameter, the request, and returns a response. Function Call: CreateRecordingIDResponseType CreateRecordingID(CreateRecordingIDRequestType myRequest)

The Request Object to be passed in:

CreateRecordingIDRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

AudioDescription String (60 chars) The description of the recording Optional

userComment String User comments (or the text of the recording)

The Response Object returned by our web service:

CreateRecordingIDResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

audioID String The audioID that will be assigned when the audio is recorded

MsgRecID String The code to enter when call in to record

RecordingNumber String The phone number to call in and record the message

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 43: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

43 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: CreateTTS

Creates a new Text to Speech message, return the audio for review and optionally save in audioLibrary

This function accepts 1 parameter, the request, and returns a response. Function Call: CreateTTSResponseType CreateTTS(CreateTTSRequestType myRequest)

The Request Object to be passed in:

CreateTTSRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

TTSText String The text you wish to have converted to speech Required

RequestedAudioFormat Numeric String Def=0; 0-WAV, 1-MP3 Optional

SaveInLibrary Numeric String Save in the audioLibrary Def=0; 0-No, 1-Save Optional

IsSalesIntro Numeric String Def=0; 1-Is a Sales Intro Message Optional

IsFavorite Numeric String Def=0; 1-Mark as favorite for searching Optional

AudioDescription String Description to help identify audio in library Optional

The Response Object returned by our web service:

CreateTTSResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

byte[] TTSAudio Binary The audio stream, save to file or pass to browser to play

AudioID String Returns the audioID for reference when saved in library

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

170 Required parameter 'TTSText' is missing

For additional information on formatting your TTSText message see TextToSpeech

Page 44: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

44 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: DeleteAudioLib

Deletes an audio library entry as long as it is not referenced by a pending broadcast and user has appropriate permissions

This function accepts 1 parameter, the request, and returns a response. Function Call: DeleteAudioLibResponseType DeleteAudioLib(DeleteAudioLibRequestType myRequest)

The Request Object to be passed in:

DeleteAudioLibRequestType

Parameter Data Type Description / Values Required?

username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

audioID String The audioID to delete Required

The Response Object returned by our web service:

DeleteAudioLibResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it

will return an error code

errorMessage String The error message corresponding with the error code

audioID String The audioID requested to delete

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

144 An invalid AudioID was specified

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

186 Required parameter 'audioID' is missing

253 Cannot delete audioID entry referenced by a pending broadcast

Page 45: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

45 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: DeleteList

Deletes a list from the account

This function accepts 1 parameter, the request, and returns a response. Function Call: DeleteListResponseType DeleteList(DeleteListRequestType myRequest)

The Request Object to be passed in:

DeleteListRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

listID Numeric String The listID of the List to be deleted Required

The Response Object returned by our web service:

DeleteListResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

listID String The listID attempted to delete

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

172 Required parameter 'listID' is missing

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 46: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

46 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: DeleteNumberFromBroadcast

Deletes a SINGLE number from an existing broadcast if it has *NOT* already been called.

This function accepts 1 parameter, the request, and returns a response. Function Call: DeleteNumberFromBroadcastResponseType DeleteNumberFromBroadcast(DeleteNumberFromBroadcastRequestType myRequest)

The Request Object to be passed in:

DeleteNumberFromBroadcastRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

broadcastID Numeric String The broadcastID to affect Required

phoneNumber Numeric String The phoneNumber to delete Required

The Response Object returned by our web service:

DeleteNumberFromBroadcastResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it

will return an error code

errorMessage String The error message corresponding with the error code

broadcastID Numeric String Requested broadcastID

phoneNumber Numeric String Requested phoneNumber

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

101 PhoneNumber does not contain 10 digits

102 PhoneNumber is not in the continental US, Puerto Rico, Hawaii, or Canada

103 PhoneNumber is on the Call-em-all Opt Out list

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

106 Account does not have enough credits

107 Account is not authorized to use the CEAAPI

132 Access denied - broadcastID does not belong to this account

135 BroadcastID is not numeric

136 Broadcast is not active

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

163 Required parameter 'phoneNumber' is missing

257 Error deleting phonenumber :

Page 47: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

47 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: DeleteNumbersFromBroadcast (multiple)

Deletes MULTIPLE numbers from an existing broadcast if they have *NOT* already been called.

This function accepts 1 parameter, the request, and returns a response. Function Call: DeleteNumbersFromBroadcastResponseType DeleteNumbersFromBroadcast(DeleteNumbersFromBroadcastRequestType myRequest)

The Request Object to be passed in:

DeleteNumbersFromBroadcastRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

broadcastID Numeric String The broadcastID to delete numbers from Required

theNumbers[] phoneNumbers Array The phoneNumbers to delete Required

theNumbers Type:

Parameter Data Type Required?

phoneNumber Numeric String Required

The Response Object returned by our web service:

DeleteNumbersFromBroadcastResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it

will return an error code

errorMessage String The error message corresponding with the error code

DeleteResultsArray[] DeleteResults Array Status of each deletion attempt

DeleteResultsArray Type:

Parameter Data Type Description / Values

phoneNumber Numeric String phoneNumber to be deleted

errorCode Integer Status of delete attempt

errorMessage String Error message

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

101 PhoneNumber does not contain 10 digits

102 PhoneNumber is not in the continental US, Puerto Rico, Hawaii, or Canada

103 PhoneNumber is on the Call-em-all Opt Out list

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

106 Account does not have enough credits

107 Account is not authorized to use the CEAAPI

132 Access denied - broadcastID does not belong to this account

135 BroadcastID is not numeric

136 Broadcast is not active

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

163 Required parameter 'phoneNumber' is missing

Page 48: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

48 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: DeletePerson

Deletes a person from all lists

This function accepts 1 parameter, the request, and returns a response. Function Call: DeletePersonResponseType DeletePerson(DeletePersonRequestType myRequest)

The Request Object to be passed in:

DeletePersonRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

personID Numeric String The personID to be removed from the above list Required

The Response Object returned by our web service:

DeletePersonResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

personID String The personID requested to be deleted

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

171 Required parameter 'personID' is missing

Page 49: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

49 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: DeletePersonFromList

Deletes a person from a list

This function accepts 1 parameter, the request, and returns a response. Function Call: DeletePersonFromListResponseType DeletePersonFromList(DeletePersonFromListRequestType myRequest)

The Request Object to be passed in:

DeletePersonFromListRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

listID Numeric String The listID of the List to be deleted Required

personID Numeric String The personID to be removed from the above list Required

The Response Object returned by our web service:

DeletePersonFromListResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

personID String The personId to be removed

listID String The listID to remove the person from

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

171 Required parameter 'personID' is missing

172 Required parameter 'listID' is missing

Page 50: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

50 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: DeleteSchedule

Deletes a re-occurring schedule created by ScheduleWeekly or ScheduleMonthly

This function accepts 1 parameter, the request, and returns a response. Function Call: DeleteScheduleResponseType DeleteSchedule(DeleteScheduleRequestType myRequest)

The Request Object to be passed in:

DeleteScheduleRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

jobName String The jobName to be deleted. See GetSchedules to

Retrieve all schedules for an account Required

The Response Object returned by our web service:

DeletePersonFromListResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

jobName String The jobName requested to be deleted

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

216 Required parameter 'jobName’ is missing or contains invalid data

217 Error Deleting schedule, verify jobName with GetSchedules

Page 51: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

51 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: ExtCreateBroadcast

Extended Features

Can launch an SMS Broadcast

Can launch Voice Broadcast

Can use Text to Speech to generate messages

Can use audioID’s for the messages

Users can create custom surveys with specific option confirmation

Create message with additional information played on keypress

For more information on the OPT-IN process, see http://www.call-em-all.com or contact customer support.

ExtCreateBroadcast is the only function call required to launch a broadcast. A broadcast can include many phone numbers to call, the type

of call (survey/ announcement/SMS), and the date/time to make the calls. If the message to be sent is omitted, the return object will include

the toll free number to call and a message recording ID for the message, along with confirmation information regarding the phone

numbers supplied. End users would need to be given instructions, along with the toll free number and message recording ID to record their

audio.

This function accepts 1 parameter, the request, and returns a response. Function Call: ExtCreateBroadcastResponseType ExtCreateBroadcast(ExtCreateBroadcastRequestType myRequest)

The Request Object to be passed in:

ExtCreateBroadcastRequestType

Parameter Data Type Description /Values Required?

username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

broadcastType Numeric String

1=Announcement;

2=Survey;

3=SMS/Text;

4=Combo SMS optIns get a text, remainder get voice

5=Combo All get voice, SMS optIns get voice and text

Required

phoneNumberSource Numeric String

1=SavedList;

2=CSV;

3=Comma Delimited String of Phone Numbers

Required

broadcastName String The name of the broadcast Required

listID Numeric String The listID to send the messages to Optional

phoneNumberCSV byte[] Byte[] The CSV file containing the phone numbers to call.

Required if phoneNumberSource=2 Optional

messageID* String

Identifies the audio for the LIVE ANSWER. Pass in a

broadcastID for this parameter if you would like to

use a message from a previous broadcast or an

AudioID to use an uploaded or TTS created message

Optional

messageIDVM* String

Identifies the audio for a Voicemail ANSWER. Pass

in a broadcastID for this parameter if you would

like to use a message from a previous broadcast or

an AudioID to use an uploaded or TTS created message

Optional

launchDateTime String

Default=current date+time;

The date+time to launch the broadcast

Format: MM/DD/YYYY HH:MM AM/PM

Optional

checkCallingWindow Numeric String

Default=1;

0=Bypass calling window check;

1=Enforce calling window check;

Optional

callerID Numeric String The caller ID number to display

Default=account setting; Optional

commaDelimited

PhoneNumbers ** String

Set phoneNumberSource = 3 to use this method

instead of the byte array. Optional

Page 52: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

52 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

smsMsg String Needed when BroadcastType = 3 SMS Optional

TTSText String The text to be spoken. OVERRIDES any specified

messageID or audioID Optional

TTSTextVM String The text to be spoken when voice mail is detected.

OVERRIDES any specified messageID or audioID Optional

Survey[] array of

Surveyoptions Array Set up custom responses for *[x] keypresses Optional

Throttle Numeric String Send no more than X simultaneous calls Optional

answerHandling Numeric String

Def=0-Automatically determine

1-Assume all answers are live

2-Assume all answers are voicemail

Optional

notifyEmail String If provided send results to the email address Optional

BroadcastTimeZone String The timezone to send the calls CST EST HST PST etc

If left empty, wil use default from account Optional

* An audioID is generated when you upload Audio using ProvideAudio or when you specify to save the results in CreateTTS

** Can specify additional field information by separating data with the “|” character. See CommaDelimitedPhoneNumbers

Surveyoptions Type:

Parameter Data Type Required?

action String Required

Values 0,1,2,3,4,5,6,7,8,9,N,I,M,C

0-9 match *[x] entries

N – No response

I – Invalid Response

M – Mini Menu (repeats quick options)

C – Disable Standard Prompts set

TTSTextResponse to “BYPASS” to enable

AudioID String Only set 1 of AudioID or TTSTextResponse

TTSTextResponse String Only set 1 of TTSTextResponse or AudioID

followUp string 0-hang up 1-Back to start of message

The Response Object returned by our web service:

ExtCreateBroadcastResponseType

Parameter Data Type Description / Values maxCallUnitsUsed Integer

MaxMessageLength Integer

SMSBroadcastID String

errorCode Integer Returns 0 if the function was successful, otherwise it will return

an error code

errorMessage String The error message corresponding with the error code

broadcastID String The broadcastID used to reference this broadcast

SMSbroadcastID String The broadcastID to use to retrieve results for the SMS broadcast

messageRecordingID String The messageRecordingID to enter when calling the 877 to record the

message for this broadcast

tollFreeNumber String The toll free number to call to record the message

goodRecordCountOnFile Integer Good record count - populated when a file or

CommaDelimitedPhoneNumbers was passed in - 0 otherwise

badRecordCountOnFile Integer Bad record count - populated when a file or

CommaDelimitedPhoneNumbers was passed in - 0 otherwise

duplicateRecrodCountOnFile Integer Duplication record count - populated when a file or

CommaDelimitedPhoneNumbers was passed in - 0 otherwise

duplicateRecordCountOnFile Integer Duplication record count - populated when a file or

CommaDelimitedPhoneNumbers was passed in - 0 otherwise

totalRecordCountOnFile Integer Total record count - populated when a file or

CommaDelimitedPhoneNumbers was passed in - 0 otherwise

smsRecordCountOnFile Integer

voicerecordCountOnFile Integer

fileUploadErrors array of

ExtFileUploadError [] Array

A list of all errors found - populated when a file or

CommaDelimitedPhoneNumbers was passed in

Page 53: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

53 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

ExtFileUploadError Type:

Parameter Data Type Comments

LineNumber Integer Or position number in CommaDelimitedPhoneNumbers

errorCode Integer Error code corresponding to the error message

errorMessage String Error message corresponding to the line number

PhoneNumber String The phone number that failed

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

106 Account does not have enough call units

107 Account is not authorized to use the CEAAPI

108 MessageID is not valid

115 Unexpected value for broadcastType, Expecting 1 or 2

114 Unexpected value for checkCallingWindow; Expecting 0 or 1

116 Unexpected value for phoneNumberSource, Expecting 1 or 2

117 broadcastType=1, but phoneNumberCSV is not supplied

118 broadcastType=2, but listID is not supplied

119 Datetime must be in MMDDYYYY HH: MM AMPM format

120 Datetime must be in the future

121 launchDateTime is outside of your calling window

122 Not enough call units to launch this broadcast

123 No good records found in phoneNumberCSV or CommaDelimitedPhoneNumbers

133 CallerID does not contain 10 digits

134 Caller ID number can not be a call-em-all number

137 phoneNumberSource=3, but commaDelimitedPhoneNumbers is not supplied

150 Error: MessageID specified for SMS Broadcast

151 Error: MessageIDVM specified for SMS Broadcast

152 Error: A TTS Parameter was specified for an SMS Broadcast

155 You specified an invalid listID

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

167 Required parameter 'broadcastType' is missing

168 Required parameter 'phoneNumberSource' is missing

169 Required parameter 'broadcastName' is missing

189 Unexpected value for broadcast type 0-voice, 1-SMS

190 SMSMsg is blank or missing

192 Survey Options specified for SMS broadcast

193 A survey structure was submitted that had errors *See additional

194 AudioID in survey structure is invalid

195 An invalid value specified for 'Throttle' must be null or integer

197 An invalid value for answerHandling was provided valid values are 0,1,2

903

DB Exception:

Possible reasons,attempted to send to SMS phonenumbers that have

not opted in yet. See full error message for details.

* Code 193 might be folowed by a number 1 - Err both audioID and TTSTextResponse specified 2 – Err both AudioID and TTSTextResponse are blank 3 – Err followUp has invalid value 0,1,2 4 – Err TTSTextResponse is blank, but audioID does not contain a properly formatted audioID 5 – Err Action contains an invalid value only accepts 1,2,3,4,5,6,7,8,9,0,N,I,M,C

Page 54: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

54 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

How to Customize a Survey or provide information in response to Keypresses

{ "username": "URUSERNAME" "pin": "URPIN" "TTSText": "Hello this is Market Makers with the latest Job opportunities, Please listen to the following options to hear about an opportunity in your field, for Electrical Jobs press star 1, for Janitorial Jobs press star 2, for Clerical Jobs press star 3, for Construction Jobs press star 4 " "TTSTextVM": "Sorry we missed you, this is Market Makers, we have new job postings visit us at http://MarketMakers.info" "answerHandling": "0" <== 0 - System attempts to decide, 1 - Assume voice mail "broadcastName": "Job Opportunities 8-14-2012" "broadcastType": "2" <== 1 is announcement, 2 is survey and will retrurn the lat option the person selected "callerID": "URCALLERID" <== If left empty or not provided, will use default callerID from account "checkCallingWindow": "1" <== Default = 1, to honor account calling window, 0 - Bypass checks "phoneNumberSource": "3" <== How we are passing number to be called 1 - listID, 2 - Binary encoded CSV/Excel, 3 - CommaDelimitedPhoneNumbers "commaDelimitedPhoneNumbers": "7145554574,7145557362" <== The numbers to call "launchDateTime": "08/14/2012 9:00:00" <== When to start making calls "messageID": "XXNNN" <== Instead of using TTS you can specify an AudioID to play "messageIDVM": "XXNNN" <== Instead of using TTS you can specify an AudioID to play "notifyEmail": "[email protected]" <== Where to send notification emails "survey": [ { "AudioID": null "TTSTextResponse": "BYPASS" <== This combined with Action "C" overrides system prompts "action": "C" "followUp": "0" <== ignored on Action "C" }, { "AudioID": null "TTSTextResponse": "I did not receive an answer" <== What to say if no response Action "N" "action": "N" "followUp": "1" <== 0 means hang up after action, 1 means go back to menu }, { "AudioID": null "TTSTextResponse": "That is an invalid option" <== Action "I" invalid entry "action": "I" "followUp": "1" <== 0 means hang up after action, 1 means go back to menu },

Page 55: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

55 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

{ "AudioID": null "TTSTextResponse": " for Electrical Jobs press star 1, for Janitorial Jobs press star 2, for Clerical Jobs press star 3, for Construction Jobs press star 4 " <= Action "M" Mini-Menu "action": "M" "followUp": "1" <== 0 means hang up after action, 1 means go back to menu }, { "AudioID": null "TTSTextResponse": "We have need of 2 Journey men electricians for the next 2 weeks working in the downtown Dallas area. If you are interested call us at 714-555-1234 again that number is 714-555-1234" <== Action "1" when *1 is pressed "action": "1" "followUp": "0" <== 0 means hang up after action, 1 means go back to menu }, { "AudioID": null "TTSTextResponse": "We need 4 people to work the Bentely Hi-rise, this is an ongoing position, is you are interested call us at 714-555-1234 again that number is 714-555-1234" <== Action "2" when *2 is pressed "action": "2" "followUp": "0" <== 0 means hang up after action, 1 means go back to menu } ] "throttle": "" }

Page 56: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

56 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetAccountkeywords Return all keywords for the account

This function accepts 1 parameter, the request, and returns a response. Function Call: GetAccountKeywordsResponseType GetAccountKeywords(GetAccountKeywordsRequestType myRequest)

The Request Object to be passed in:

GetAccountkeywordsRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

The Response Object returned by our web service:

GetAccountKeywordsResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it

will return an error code

errorMessage String The error message corresponding with the error code

OptOuts array of

OptOutDetail[] array The lists configured in the account

OptOutDetail Type:

Parameter Data Type Comments

PhoneNumber String

DateAdded String

Firstname String

LastName String

Return/Error Codes: Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 57: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

57 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetAccountOptOuts Return all opted out phone numbers for the account

This function accepts 1 parameter, the request, and returns a response. Function Call: GetAccountOptOutsResponseType GetAccountOptOuts(GetAccountOptOutsRequestType myRequest)

The Request Object to be passed in:

GetAccountOptOutsRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

startDate String The startDate and Time to filter by MM/DD/YYYY HH:MM Optional

stopDate String The stopDate and Time to filter by MM/DD/YYYY HH:MM Optional

The Response Object returned by our web service:

GetAccountOptOutsResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it

will return an error code

errorMessage String The error message corresponding with the error code

OptOuts array of

OptOutDetail[] array The lists configured in the account

OptOutDetail Type:

Parameter Data Type Comments

PhoneNumber String

DateAdded String

Firstname String

LastName String

Return/Error Codes: Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 58: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

58 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetAccountStatusValues

Enumeration of Account status values and descriptions

This function accepts 1 parameter, the request, and returns a response. Function Call: GetAccountStatusResponseType GetAccountStatusValues(GetAccountStatusRequestType myRequest)

The Request Object to be passed in:

GetAccountStatusRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

The Response Object returned by our web service:

GetAccountStatusResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise

it will return an error code

errorMessage String The error message corresponding with the error code

StatusContents array of

StatusDetailData[] Array Account statuses and description

StatusDetailData Type:

Parameter Data Type Comments

AccountStatus Numeric String

Description String

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 59: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

59 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetAllBroadcastStatus

Return status of all broadcast of type selected with optional filtering and sorting

This function accepts 1 parameter, the request, and returns a response. Function Call: GetAllBroadcastStatusResponseType GetAllBroadcastStatus(GetAllBroadcastStatusRequestType myRequest)

The Request Object to be passed in:

GetAllBroadcastStatusRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

Status Numeric String

Default = 0–Active

1-Completed (back max of 90 days)

2-Both Active and Completed

Optional

broadcastType Numeric String

Default = 0-Voice

1-SMS

2-Both

Optional

sortField Numeric String Default = 0-Broadcast StartDate Desc

1-Broadcast CreateDate Desc Optional

startDate* String The startDate and Time to filter by

MM/DD/YYYY HH:MM Optional

stopDate* String The stopDate and Time to filter by

MM/DD/YYYY HH:MM Optional

*Filtering is based on what value sortField is set to, default is Broadcast StartDate

The Response Object returned by our web service:

GetAllBroadcastStatusResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise

it will return an error code

errorMessage String The error message corresponding with the error code

BroadCastContents array of

BroadcastDetailData[] Array The returned broadcast data

BroadcastDetailData Type:

Parameter Data Type Comments

actualCallUnitsUsed String

maxCallUnitsUsed String

startDate String

startTime String

broadcastID String

broadcastName String

status String

completedCalls String

notCompleted String

totalcalls String

createTimeStamp String

livePerson String

voiceMail String

busyNA String

callerIDNumber String

invalidNumber String

Page 60: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

60 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

notCompleted String

broadcastType String Possible values, "SMS" or "Voice"

isActive String

"1" Broadcast is active/current

"0" Broadcast is completed/cancelled

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

Page 61: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

61 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetAudioLib

Returns audio library entries matching required parameters

This function accepts 1 parameter, the request, and returns a response. Function Call: GetAudioLibResponseType GetAudioLib(GetAudioLibRequestType myRequest)

The Request Object to be passed in:

GetAudioLibRequestType

Parameter Data Type Description / Values Required?

username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

isSalesIntro String Blank/Null = Don't Care [0=false, 1=true] Optional

isAudioTTS String Blank/Null = Don't Care [0=false, 1=true] Optional

hasSalesIntro String Blank/Null = Don't Care [0=false, 1=true] Optional

favorite String Blank/Null = Don't Care [0=false, 1=true] Optional

messageType String Blank/Null = Don't Care [ the message type] Optional

The Response Object returned by our web service:

GetAudioLibResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise

it will return an error code

errorMessage The error message corresponding with the error code

GetAudioLibContents array of

GetAudioLibDetailData[] Array The Audio Library entries matching criteria

GetAudioLibDetailData Type:

Parameter Data Type Comments

audioID String

audioDescription String

userComment String

isSalesIntro Boolean

isAudioTTS Boolean

audioLength Int32

dateAdded Boolean

dateLastUsed Datetime

hasSalesIntro Datetime

favorite Boolean

messageType Short

Active Short

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

Page 62: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

62 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 63: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

63 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetAudioLink DEPRECATED (Broadcast ID)

Retrieve the audio used for a particular broadcast

DEPRECATED (see RetrieveAudio)

This function accepts 1 parameter, the request, and returns a response. Function Call: GetAudioLinkResponseType GetAudioLink(GetAudioLinkRequestType myRequest)

The Request Object to be passed in:

GetAudioLinkRequestType

Parameter Data Type Description / Values Required? Username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

broadcastID Numeric String The broadcastID you want the Audio from Required

The Response Object returned by our web service:

GetAudioLinkResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

BinaryMessage byte[] Binary The audio stream for the broadcasts message

BinaryVmailMessage

byte[] Binary

The audio stream for the broadcasts voice mail message if

one was recorded

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

131 BroadcastID was not found

132 Access denied - broadcastID does not belong to this account

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 64: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

64 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetAudioLinkMP3 DEPRECATED (Broadcast ID)

Retrieve the audio saved for a particular broadcast (save binary responses as .mp3 file extension to play)

DEPRECATED (see RetrieveAudio)

This function accepts 1 parameter, the request, and returns a response. Function Call: GetAudioLinkMP3ResponseType GetAudioLinkMP3(GetAudioLinkMP3RequestType myRequest)

The Request Object to be passed in:

GetAudioLinkMP3RequestType

Parameter Data Type Description / Values Required? Username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

broadcastID Numeric String The broadcastID you want the Audio from Required

The Response Object returned by our web service:

GetAudioLinkMP3ResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

BinaryMessage byte[] Binary The audio stream for the broadcasts message

BinaryVmailMessage byte[] Binary The audio stream for the broadcasts voice mail message if

one was recorded

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

131 BroadcastID was not found

132 Access denied - broadcastID does not belong to this account

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 65: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

65 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetAudioLinkWAV DEPRECATED (Broadcast ID)

Retrieve the audio saved for a particular broadcast (save binary responses as .wav file extension to play)

DEPRECATED (see RetrieveAudio)

This function accepts 1 parameter, the request, and returns a response. Function Call: GetAudioLinkWAVResponseType GetAudioLinkWAV(GetAudioLinkWAVRequestType myRequest)

The Request Object to be passed in:

GetAudioLinkWAVRequestType

Parameter Data Type Description / Values Required? Username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

broadcastID Numeric String The broadcastID you want the Audio from Required

The Response Object returned by our web service:

GetAudioLinkWAVResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it

will return an error code

errorMessage String The error message corresponding with the error code

BinaryMessage byte[] Binary The audio stream for the broadcasts message

BinaryVmailMessage byte[] Binary The audio stream for the broadcasts voice mail message if

one was recorded

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

131 BroadcastID was not found

132 Access denied - broadcastID does not belong to this account

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 66: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

66 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetAvailableCreditCardTypes

Enumeration of Accepted Credit card enumerations and descriptions

This function accepts 1 parameter, the request, and returns a response. Function Call: GetAvailableCreditCardTypesResponseType

GetAvailableCreditCardTypes(GetAvailableCreditCardTypesRequestType myRequest)

The Request Object to be passed in:

GetAvailableCreditCardTypesRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

The Response Object returned by our web service:

GetAvailableCreditCardTypesResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise

it will return an error code

errorMessage String The error message corresponding with the error code

CardContents array of

CardDetailData[] Array The accepted credit card types and description

CardDetailData Type:

Parameter Data Type Comments

CCType Numeric String

CCDescription String

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 67: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

67 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetAvailableGroupCodes

Enumeration of Accepted Credit card enumerations and descriptions

This function accepts 1 parameter, the request, and returns a response. Function Call: GetAvailableGroupCodesResponseType GetAvailableGroupCodes(GetAvailableGroupCodesRequestType myRequest)

The Request Object to be passed in:

GetAvailableGroupCodesRequestType

Parameter Data Type Description / Values Required? Username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

The Response Object returned by our web service:

GetAvailabeGroupCodesResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise

it will return an error code

errorMessage String The error message corresponding with the error code

GroupContents array of

GroupDetailData[] Array The Group codes available for use.

GroupDetailData Type:

Parameter Data Type Comments

GroupCode Numeric String

GroupDescription String

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 68: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

68 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetAvailableLists

Return the lists available in the account

This function accepts 1 parameter, the request, and returns a response. Function Call: GetAvailableListsResponseType GetAvailableLists(GetAvailableListsRequestType myRequest)

The Request Object to be passed in:

GetAvailableListsRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

The Response Object returned by our web service:

GetAvailableListsResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

lists array of

ListDetail[] Array The lists configured in the account

ListDetail Type:

Parameter Data Type Comments

ListName String Descriptive name of the list

ListID Int64 The ListID (used to manipulate lists)

PhoneNumberCount Int32 Count of phonenumbers in list

SMSName String Opt In Keyword for List

AutoReplyMessage String Reply to opting in

IsAutoReplyOn String 0-false; 1-true Send AutoReplyMessage or not

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 69: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

69 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetBroadcastResult

GetBroadcastResult will retrieve the results of a broadcast. Results may be returned for in-progress and/or completed broadcasts for up to 90 days from the date of broadcast completion. Call-Em-All recommends and requests that our clients store this information in their database for future access, and to eliminate repetitive demands for large volumes of information. Requests will return either summary information or detailed (call-by-call) results.

Function Call:

GetBroadcastResultResponseType GetBroadcastResult (GetBroadcastResultRequestType myRequest)

The Request Object to be passed in:

GetBroadcastResultRequestType

Parameter Data Type Description Required?

Username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

broadcastID Numeric String The broadcastID to query Required

getBroadcastSummary String Default=0, 0=Do not return summary, 1=Return summary Optional

getBroadcastDetails String Default=0, 0=Do not return details, 1=Return

broadcast details Optional

surveyResultFilter String

Only used when getBroadcastDetails=1, 1=Only return

results with a specific survey result, *=only return

calls with a survey result

Optional

callResultFilter String Only checked when getBroadcastDetails=1, Only return

calls with a certain call result Optional

Valid values for callResultFilter for VOICE Broadcast:

Value CallType

* All Results

0 No Result Yet

1 Live Answer

2 Busy Signal

3 Operator Intercept

4 Ring No Answer

5 (Not Used)

6 Do Not Call

7 Voicemail

8 Calling Window Expired

9 Canceled

Valid values for callResultFilter for an SMS Broadcast:

Value CallType

* All Results

0 Not Sent

1 Sent to Carrier

2 Sent to Handset

3 Cancelled

4 Expired

5 Not Authorized

6 Pending Authorization

7 Carrier Not Available

8 Not mobile device

9 Opted out

10 Error

11 Rejected Billing

12 Rejected Handset

13 Rejected Carrier

14 Rejected Content

Page 70: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

70 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

The Response Object returned by our web service:

GetBroadcastResultResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message cooresponding with the error code

broadcastStatus Int16 The current status of the broadcast

broadcastStatusName String The text equivelant of the broadcastStatus

completedCalls Int32 The current number of Completed calls for the broadcast

liveAnswerResults Int32 The current number of Live Answer calls for the broadcast

voiceMailResults Int32 The current number of Voice Mail calls for the broadcast

busyNoAnswerResults Int32 The current number of Busy / No Answer calls for the broadcast

invalidNumberResults Int32 The current number of Invalid Number calls for the broadcast

broadcastDetails Array CallDetail[] Only returned when getBroadcastDetails=1

broadcastName String Added when available

audioMessage String Added when available

AudioMessageVM String Added when available

broadcastID String Added to help identify responses via Async calls

SMSMsg String If available returns the SMS text that was specified

broadcastStatus:

broadcastStatus broadcastStatusName

0 Pending Message

1 Message Recorded

2 Generating Detail Records

3 Broadcasting

4 Complete

5 Canceled

6 Awaiting Authorization

7 Authorization Declined - Needs Sales Intro

8 Authorization Approved

9 Processing

10 Expired

11 Authorization Declined - Spam

12 Authorization Declined - Bad Recording Quality

13 Message Recorded - Update Window

callDetail Type:

Parameter Data Type Comments

phoneNumber Phonenumber or SMS number

firstName If available the first name

lastName If available the last name

numberOfAttempts How many time attempted

lastCallTime Date/Time of last attempt

callResult Valid values listed in CallResultFilter table above.

callResultName Valid values listed in CallResultFilter table above.

surveyResult If a survey what digit they replied with

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

Page 71: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

71 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

105 Account is inactive. Please contact customer support.

106 Account does not have enough call units

107 Account is not authorized to use the CEAAPI

124 Unexpected value for getBroadcastSummary; Expecting 0 or 1

125 Unexpected value for getBroadcastDetails; Expecting 0 or 1

126 Unexpected value for surveyResultFilter; Expecting

*,0,1,2,3,4,5,6,7,8, or 9

127 Unexpected value for callResultFilter; Expecting 0,1,2,3,4,5,6,7,8,

or 9

128 Cannot filter results by both surveyResultsFilter and

callResultFilter. Only pass in one or the other

129 getBroadcastDetails=1, but neither callResultFilter or

surveyResultFilter is supplied

130 getBroadcastDetails=0, but either callResultFilter or

surveyResultFilter is supplied

131 broadcastID not found

132 Access denied - broadcastID does not belong to this account

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 72: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

72 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetBroadcastStatusValues

Enumeration of Broadcast status values and descriptions

This function accepts 1 parameter, the request, and returns a response. Function Call: GetBroadcastStatusValuesResponseType GetBroadcastStatusValues(GetBroadcastStatusValuesRequestType

myRequest)

The Request Object to be passed in:

GetBroadcastStatusValuesRequestType

Parameter Data Type Description / Values Required?

username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

The Response Object returned by our web service:

GetBroadcastStatusValuesResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful,

otherwise it will return an error code

errorMessage String The error message corresponding with the error

code

StatusContents array of

BroadcastStatusValuesDetailData[] Array Broadcast Statuses and descriptions

BroadcastStatusValuesDetailData Type:

Parameter Data Type Comments

AccountStatus String

Description String

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 73: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

73 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetCallBalance

History of balance changes for the account

This function accepts 1 parameter, the request, and returns a response. Function Call: GetCallBalanceResponseType GetCallBalance(GetCallBalanceRequestType myRequest)

The Request Object to be passed in:

GetCallBalanceRequestType

Parameter Data Type Description / Values Required?

username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

startDate String The startDate and Time to filter by

MM/DD/YYYY HH:MM Optional

stopDate String The stopDate and Time to filter by

MM/DD/YYYY HH:MM Optional

The Response Object returned by our web service:

GetCallBalanceResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful,

otherwise it will return an error code

errorMessage String The error message corresponding with the error

code

GetCallBalanceContents array of

GetCallBalanceDetailData[] Array

The balance changes recorded against the

account

GetCallBalanceDetailData Type:

Parameter Data Type Comments

CreditTimeStamp String

NumberCallsCredited String

CreditType String

Notes String

ChargeHistoryID String

FirstName String

LastName String

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 74: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

74 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetCallResultValues

Enumeration of Broadcast status values and descriptions

This function accepts 1 parameter, the request, and returns a response. Function Call: GetCallResultValuesResponseType GetCallResultValues(GetCallResultValuesRequestType myRequest)

The Request Object to be passed in:

GetCallResultValuesRequestType

Parameter Data Type Description / Values Required?

Username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

The Response Object returned by our web service:

GetCallResultValuesResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful,

otherwise it will return an error code

errorMessage String The error message corresponding with the error

code

StatusContents array of

CallResultValuesDetailData[] Array Broadcast Statuses and descriptions

GetCallResultValuesDetailData Type:

Parameter Data Type Comments

CallResult String

Description String

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 75: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

75 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetChargeHistory

History of charges for the account

This function accepts 1 parameter, the request, and returns a response. Function Call: GetChargeHistoryResponseType GetChargeHistory(GetChargeHistoryRequestType myRequest)

The Request Object to be passed in:

GetChargeHistoryRequestType

Parameter Data Type Description / Values Required?

username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

startDate String The startDate and Time to filter by

MM/DD/YYYY HH:MM Optional

stopDate String The stopDate and Time to filter by

MM/DD/YYYY HH:MM Optional

The Response Object returned by our web service:

GetChargeHistoryResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise

it will return an error code

errorMessage String The error message corresponding with the error code

GetChargeHistoryContents array of

GetChargeHistoryDetailData [] Array The charges recorded against the account

GetChargeHistoryDetailData Type:

Parameter Data Type Comments

ChargeTimeStamp String

TotalAmountCharged String

Notes String

TransactionType String

ConfirmationNumber String

SalesTaxCharged String

ReferenceCode String

CCType String

CCDisplay String

FirstName String

Lastname String

Expiration String

SubscriptionLevel String

PartialCost String

PartialCredit String

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

Page 76: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

76 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Function: GetListContents

Return the contents of a specified list, see GetAvailableLists to retrieve all listID’s and name and list counts to help calculate paging.

This function accepts 1 parameter, the request, and returns a response. Function Call: GetListContentsResponseType GetListContents(GetListContentsRequestType myRequest)

The Request Object to be passed in:

GetListContentsRequestType

Parameter Data Type Description / Values Required?

username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

ListID Numeric String The list ID you want the contents for

(default is 0 == everyone) Optional

pageSize Numeric String How many records to return (Def=100) Optional

whatPage Numeric String If specify pagesize, what result page do you want.

If blank defaults to page 1 Optional

The Response Object returned by our web service:

GetListContentsResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it

will return an error code

errorMessage String The error message corresponding with the error code

ListContents array of

ListDetailData[] Array The lists configured in the account

ListDetailData Type:

Parameter Data Type Comments

PersonID Numeric String

PrimaryPhone Numeric String

Firstname String

LastName String

Notes String

SecondaryPhone Numeric String

TertiaryPhone Numeric String

Return/Error Codes: Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

250 pageSize contains an invalid value; allowed values 1 - 100; suggest values 20 - 50

251 whatPage contains an invalid value; acceptable values 1 - N

252 pageSize specified, but whatPage is null

Page 77: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

77 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetListIDByName

Return the listID with the specified name

This function accepts 1 parameter, the request, and returns a response. Function Call: GetListIDByNameResponseType GetListIDByName(GetListIDByNameRequestType myRequest)

The Request Object to be passed in:

GetListIDByNameRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

listName String The listName to look up (exact match) Required

The Response Object returned by our web service:

GetListIDByNameResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

listID String The listID matching the name

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 78: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

78 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetListsByPersonID

Return the listIDs associated with the specified PersonID

This function accepts 1 parameter, the request, and returns a response. Function Call: GetListsByPersonIDResponseType GetListsByPersonID(GetListsByPersonIDRequestType myRequest)

The Request Object to be passed in:

GetListsByPersonIDRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

personID Numeric String The personID to query what lists belong to Required

The Response Object returned by our web service:

GetListsByPersonIDResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful,

otherwise it will return an error code

errorMessage String The error message corresponding with the error

code

GetListsByPersonIDListDetail[]

lists

Array

GetlistsByPersonIDListDetail Type:

Parameter Data Type Comments

ListName String

ListID Int64

PhoneNumberCount Int32

SMSName String

AutoReplyMesage String

IsAutoReplyOn String 0-No 1-Yes

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 79: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

79 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetOptOutList

Return all opted out phone numbers for the account

This function accepts 1 parameter, the request, and returns a response. Function Call: GetOptOutListResponseType GetOptOutList(GetOptOutListRequestType myRequest)

The Request Object to be passed in:

GetOptOutListRequestType

Parameter Data Type Description / Values Required?

username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

startDate String The startDate and Time to filter by MM/DD/YYYY HH:MM Optional

stopDate String The stopDate and Time to filter by MM/DD/YYYY HH:MM Optional

The Response Object returned by our web service:

GetOptOutListResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful,

otherwise it will return an error code

errorMessage String The error message corresponding with the error

code

GetOptOutListContents array of

GetOptOutListDetailData[] Array The lists configured in the account

GetOptOutListDetailData Type:

Parameter Data Type Comments

PhoneNumber Numeric String

DateAdded String

Firstname String

LastName String

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 80: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

80 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetPersonIDDetails

List all personID’s that a phone number is associated with

This function accepts 1 parameter, the request, and returns a response. Function Call: GetPersonIDDetailsResponseType GetPersonIDDetails(GetPersonIDDetailsRequestType myRequest)

The Request Object to be passed in:

GetPersonIDDetailsRequestType

Parameter Data Type Description / Values Required?

username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

personID String The personID to query Required

The Response Object returned by our web service:

GetPersonIDDetailsResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful,

otherwise it will return an error code

errorMessage String The error message corresponding with the

error code

GetPersonIDDetailsListDetailData[]

ListContents

Array The personID Details

GetPersonIDDetailsListDetailData Type:

Parameter Data Type Comments

PersonID Numeric String

PrimaryPhone String

FirstName String

LastName String

Notes String

SecondaryPhone String

TertiaryPhone String

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 81: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

81 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetPersonIDsByPhone

List all personID’s that a phone number is associated with

This function accepts 1 parameter, the request, and returns a response. Function Call: GetPersonIDsByPhoneResponseType GetPersonIDsByPhone(GetPersonIDsByPhoneRequestType myRequest)

The Request Object to be passed in:

GetPersonIDsByPhoneRequestType

Parameter Data Type Description / Values Required?

username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

phoneNumber String The phonenumber to query Required

The Response Object returned by our web service:

GetPersonIDsByPhoneResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful,

otherwise it will return an error code

errorMessage String The error message corresponding with the

error code

GetPersonIDsByPhoneListDetailData[] ListContents

Array The lists configured in the account

GetPersonIDsByPhoneListDetailData Type:

Parameter Data Type Comments

PersonID Numeric String

PrimaryPhone String

FirstName String

LastName String

Notes String

SecondaryPhone String

TertiaryPhone String

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 82: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

82 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetPhoneNumberHistory

Retrieve all call details for a particular phone number can be filtered by start/stop date

This function accepts 1 parameter, the request, and returns a response. Function Call: GetPhoneNumberHistoryResponseType GetPhoneNumberHistory(GetPhoneNumberHistoryRequestType myRequest)

The Request Object to be passed in:

GetPhoneNumberHistoryRequestType

Parameter Data Type Description / Values Required?

username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

phoneNumber String The phonenumber to query Required

startDate String The startDate and Time to filter by MM/DD/YYYY HH:MM Optional

stopDate String The stopDate and Time to filter by MM/DD/YYYY HH:MM Optional

The Response Object returned by our web service:

GetPhoneNumberHistoryResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful,

otherwise it will return an error code

errorMessage String The error message corresponding with the

error code

GetPhoneNumberHistoryDetailData[] ListContents

Array The lists configured in the account

GetPersonIDsByPhoneListDetailData Type:

Parameter Data Type Comments

PrimaryPhone String

CallResultDesc String

CallBroadcastID String

BroadcastName String

AudioMessage String

NumberOfAttempts String

LastCallDate String

BroadcastType String

SurveyResult String

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 83: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

83 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetSchedules

List all schedules that exist under an account

This function accepts 1 parameter, the request, and returns a response. Function Call: GetSchedulesResponseType GetSchedules(GetSchedulesRequestType myRequest)

The Request Object to be passed in:

GetSchedulesRequestType

Parameter Data Type Description / Values Required?

username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

The Response Object returned by our web service:

GetSchedulesResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful,

otherwise it will return an error code

errorMessage String The error message corresponding with the error

code

GetSchedulesDetailData[] ScheduleContents

Array The different scheduled re-occurring

broadcasts that exist

GetSchedulesDetailData Type:

Parameter Data Type Comments

jobName String

Use jobName when calling DeleteSchedule to

delete a re-occurring broadcast

occurs String Text description of when the schedule runs

beginDate String (date) When schedule is active/starts

endDate String (date) When schedule stops

durationMinutes String (int) Can specify it to run for X hours

intervalMinutes String (int) How often to wake up and run

mostRecentRunTime String (date+time) When schedule last ran (or “Never”)

nextRunTime String (date+time) When will next run (or “Never”)

status String Active / Disabled

scheduleName String

callerID Numeric string

audioID String

listID Numeric string

notificationFlag String

SMSMessageText String

broadcastType String (int)

Page 84: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

84 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 85: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

85 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetSMSInbox

Return results, responses from users sms messages

This function accepts 1 parameter, the request, and returns a response. Function Call: GetSMSInboxResponseType GetSMSInbox(GetSMSInboxRequestType myRequest)

The Request Object to be passed in:

GetSMSInboxRequestType

Parameter Data Type Description / Values Required?

username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

messageCounter Numeric String Pass in the most recent inboxID received and

system will return all messages since. Optional

status String Default = *-All types, 0-unread, 1-read, 2-deleted Optional

startDate String The startDate and Time to filter by

MM/DD/YYYY HH:MM Optional

stopDate String The stopDate and Time to filter by

MM/DD/YYYY HH:MM Optional

phoneNumber String Retrieve only records that match Optional

The Response Object returned by our web service:

GetSMSInboxResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful,

otherwise it will return an error code

errorMessage String The error message corresponding with the error

code

GetSMSInboxContents array of GetSMSInboxDetailData[]

Array The inbox details

GetSMSInboxDetailData Type:

Parameter Data Type Comments

inboxID Numeric String Unique ascending ID

messageType

Numeric String

SmsOptIn = 0, SmsOptOut = 1, SystemMsg = 2, BcSent = 3, BcReply = 4, HardReplyBc = 5, HardReplyNoBc = 6

status

Numeric String

NotRead = 0, Read = 1, Deleted = 2

subject String

body String

broadcastID String

phoneNumber Numeric String

firstName String

lastName String

received Date String

Page 86: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

86 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

lastUpdated Date String

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 87: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

87 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetSMSOptIns

Return all phone numbers that have opted in for SMS, or return only those for a particular listID

This function accepts 1 parameter, the request, and returns a response. Function Call: GetSMSOptInsResponseType GetSMSOptIns(GetSMSOptInsRequestType myRequest)

The Request Object to be passed in:

GetSMSOptInsRequestType

Parameter Data Type Description / Values Required?

username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

listID Numeric String The list ID you want the contents for

(default is 0 == everyone) Optional

startDate String The startDate and Time to filter by

MM/DD/YYYY HH:MM Optional

stopDate String The stopDate and Time to filter by

MM/DD/YYYY HH:MM Optional

The Response Object returned by our web service:

GetSMSOptInsResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful,

otherwise it will return an error code

errorMessage String The error message corresponding with the error

code

GetSMSOptInsContents array of

GetSMSOptinsDetailData[] Array The lists configured in the account

GetSMSOptInsDetailData Type:

Parameter Data Type Comments

personID Numeric String

listID Numeric String

PhoneNumber Numeric String

DateAdded Date String

Firstname String

LastName String

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 88: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

88 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: GetSMSResultValues

Enumeration of SMS Result values and descriptions

This function accepts 1 parameter, the request, and returns a response. Function Call: GetSMSResultValuesResponseType GetSMSResultValues(GetSMSResultValuesRequestType myRequest)

The Request Object to be passed in:

GetSMSResultValuesRequestType

Parameter Data Type Description / Values Required?

Username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

The Response Object returned by our web service:

GetSMSResultValuesResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful,

otherwise it will return an error code

errorMessage String The error message corresponding with the error

code

GetSMSResultValues array of

GetSMSResultValuesDetailData[] Array Broadcast Statuses and descriptions

GetSMSResultValuesDetailData Type:

Parameter Data Type Comments

SMSResult String

Description String

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 89: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

89 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: InsertCustomCall

This function is used to create a single call with a specific message at a specific time.

This function accepts 1 parameter, the request, and returns a response. Function Call: InsertCustomCallResponseType InsertCustomCall(InsertCustomCallRequestType myRequest)

The Request Object to be passed in:

InsertCustomCallRequestType

Parameter Data Type Description / Values Required?

Username Numeric

String The CEA Username of the account Required

Pin Numeric

String The CEA Pin of the account Required

phoneNumber Numeric

String The phone number to call Required

messageID

* also supports audioID

Numeric

String

The Broadcast ID corresponding with the message to

play on the call Optional

sourceURL The URL of the caller or Program name Required

checkMaxPhoneCount Numeric

String

Default=1; 0=Bypass max phone number check;

1=Enforce max phone number check Optional

maxPhoneCount Numeric

String

Default=5; The maximum number of times a phone

number can be called; Only checked if

checkMaxPhoneCount=1; Optional

checkCallingWindow Numeric

String

Default=1; 0=Bypass calling window check; 1=Enforce

calling window check; Optional

launchDateTime String Default=current date and time; The date and time to

launch the call in MM/DD/YYYY HH:MM AM/PM format Optional

callerID Numeric

String Default=account setting; The caller ID to display Optional

TTSText String If specified, TTS will be used to create Message Optional

* An audioID is generated when you upload Audio using ProvideAudio or when you specify to save the results

in CreateTTS

The Response Object returned by our web service:

InsertCustomCallResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it

will return an error code

errorMessage String The error message corresponding with the error code

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

101 Phone number does not contain 10 digits

102 Phone number is not in the continental US, Hawaii, or Canada

103 Phone number is on the Call-em-all opt out list

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

106 Account does not have enough call units

Page 90: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

90 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

107 Account is not authorized to use the CEAAPI

108 MessageID is not valid

109 MaxPhoneCount must be >= 1

110 Phone number exceeded call limit

111 Current local time is outside of your calling window

112 Unexpected value for checkMaxPhoneCount; Expecting 0 or 1.

113 Unexpected value for maxPhoneCount; maxPhoneCount must be >= 1

114 Unexpected value for checkCallingWindow; Expecting 0 or 1

119 Datetime must be in MM/DD/YYYY HH:MM AM/PM format

120 Datetime must be in the future

133 CallerID does not contain 10 digits

134 Caller ID number can not be a call-em-all number

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

163 Required parameter 'phoneNumber' is missing

164 Required parameter 'messageID' is missing

165 Required parameter 'sourceURL' is missing

Page 91: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

91 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: InsertOptOut

Inserts a number into an account's opt out registry

This function accepts 1 parameter, the request, and returns a response. Function Call: InsertOptOutResponseType InsertOptOut(InsertOptOutRequestType myRequest)

The Request Object to be passed in:

InsertOptOutRequestType

Parameter Data Type Description / Values Required?

Username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

phoneNumber Numeric String The phone number to be added to the opt out registry Required

The Response Object returned by our web service:

InsertOptOutResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

101 Phone number does not contain 10 digits

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

163 Required parameter 'phoneNumber' is missing

Page 92: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

92 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: LinkKeywordToList

Link a top level SMS keyword to a list

This function accepts 1 parameter, the request, and returns a response. Function Call: LinkKeywordToListResponseType LinkKeywordToList(LinkKeywordToListRequestType myRequest)

The Request Object to be passed in:

LinkKeywordToListRequestType

Parameter Data Type Description / Values Required? Username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

listID String The listID to link the keyword to Required

keyword String The keyword to link to the list

(Verify availability with CheckKeywordAvailable) Required

The Response Object returned by our web service:

LinkKeywordToListResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

155 You specified an invalid listID

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

172 Required parameter 'listID' is missing

188 Required parameter 'keyword' is missing

196 Requested keyword is not available

201 Keywords must be between 3 and 20 digits alpha-numeric and dash only

Page 93: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

93 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: ProvideAudio

Upload an audio file to your audio library for use in future broadcasts

This function accepts 1 parameter, the request, and returns a response. Function Call: ProvideAudioResponseType ProvideAudio(ProvideAudioRequestType myRequest)

The Request Object to be passed in:

ProvideAudioRequestType

Parameter Data Type Description / Values Required?

username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

AudioType Numeric String

Def=0; 0=WAV, 1=MP3, 2=AVI

3=WMA;WMV;ASF;MPG;AIF;AU;SND;MID;RMI;OGG;FLAC;

CDA;AC3;DTS;MKA;MKV;MPC;M4A;AAC;MPA;

MP2;M1A;M2A

Optional

Byte[]

BinaryMessage Binary The raw audio file in the specified format Required

AudioDescription String A description of the Audio Reccomended

The Response Object returned by our web service:

ProvideAudioResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

AudioID String The audioID for future reference in creating broadcasts

AudioLength Integer The length of the uploaded audio in seconds

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

141 Empty BinaryMessage not allowed

142 Invalid AudioType specified

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 94: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

94 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: RenameList

Changes a list’s name

This function accepts 1 parameter, the request, and returns a response. Function Call: RenameListResponseType RenameList(RenameListRequestType myRequest)

The Request Object to be passed in:

RenameListRequestType

Parameter Data Type Description / Values Required? username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

listID Long The listID of the List to be renamed Required

newListName Numeric String The new list name Required

The Response Object returned by our web service:

RenameListResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

listID Long The listID attempted to rename

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

155 You specified an invalid listID

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

172 Required parameter 'listID' is missing

218 Required parameter 'newListName' is missing

Page 95: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

95 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: RetrieveAudio

Retrieve an audio file from your audio library

This function accepts 1 parameter, the request, and returns a response. Function Call: RetrieveAudioResponseType RetrieveAudio(RetrieveAudioRequestType myRequest)

The Request Object to be passed in:

RetrieveAudioRequestType

Parameter Data Type Description / Values Required?

username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

AudioID String The AudioID you want the audio from Required

AudioFormat Numeric String Def=0; 0=WAV, 1=MP2 Optional

The Response Object returned by our web service:

RetrieveAudioResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

BinaryFile Byte[] Binary save this to disk with requested extension

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

186 Required parameter 'audioID' is missing

191 Invalid audioformat specified 0=WAV, 1=MP3

Page 96: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

96 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: RetrieveRecordingIDs

Retrieve recordings ID's that have not yet had the message recorded

This function accepts 1 parameter, the request, and returns a response. Function Call: RetrieveRecordingIDsResponseType RetrieveRecordingIDs(RetrieveRecordingIDsRequestType myRequest)

The Request Object to be passed in:

RetrieveRecordingIDsRequestType

Parameter Data Type Description / Values Required? Username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

The Response Object returned by our web service:

RetrieveRecordingIDsResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it

will return an error code

errorMessage String The error message corresponding with the error code

tbAudioRecordings [] ActiveRecordings

Array

tbAudioRecordings Type:

Parameter Data Type Required?

MsgRecID Long Number to enter when calling in to

record the message

AccountID Long Internal Usage

UserID Long Internal Usage

DateCreated DateTime Date the recording ID was created

audioID String The audioID that will be assigned

when the message is recorded

RecordingStatus Byte Internal Usage

PhoneNumber String Number to dial to record message

lastUpdated DateTime Internal Usage

DetGenGUID GUID Internal Usage

AudioDescription String What the user entered when the

recording request was created

userComment String What the user entered when the

recording request was created

Return/Error Codes:

Page 97: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

97 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 98: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

98 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: ScheduleDaily

Schedule a broadcast to a particular Group/ListID to occur on a daily basis

This function accepts 1 parameter, the request, and returns a response. Function Call: ScheduleDailyResponseType ScheduleDaily(ScheduleDailyRequestType myRequest)

The Request Object to be passed in:

ScheduleDailyRequestType

Parameter Data Type Description / Values Required?

Username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

BroadcastName String BroadcastName Required

CallerID String CallerID to display, defaults to number on

account Optional

AudioID String AudioID of the message/recording to use Required

ListID String The listID to send the messages to Required

StartDate String

Use MM/DD/YYYY format

The day the recurring message starts

Required

StopDate String

Use MM/DD/YYYY format

The day the recurring message stops

Required

StartTime String

HH:MM Use 24 hour clock (user local TZ)

12 – noon 23:59 - midnight

The time of day to make the call

Required

ReOccursXDays String Default=1, can can be 2 (every other day) or

3 (every three days)4..5..6.. etc Required

AdvancedFlag String To Use advanced features set = 1, 0=def Optional

RepeatEvery String

Use an integer number

ie

15 = 15 minutes

37 = 37 minutes

90 = 1 hour and 30 minutes

Nummber of minutes after first call is made

to call again. Be careful system will re-try

if no-answer on a 5-15-15-15 schedule by

default so repeats can be annoying

Only used if Advanced is set = 1

Optional

RepeatUntil String The time to stop repeating the call

Only used if Advanced is set = 1 Optional

SendEmailOnCompletion String

(0/1) Depends on account, set = 1 if you

Want an email when your scheduled call is

sent, default = 0

Optional

SMSText String Needed for combo broadcasts

BroadcastType = 3,4 or 5 Optional

BroadcastType Numeric string

1-default Voice Only

3-SMS Only

4-SMS or Voice

5-SMS and VOICE

commaDelimitedPhoneNumbers ** String Comma delimited list of numbers to call

** Can specify additional field information by separating data with the “|” character. See CommaDelimitedPhoneNumbers

Page 99: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

99 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

The Response Object returned by our web service:

ScheduledailyResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

186 Required parameter 'audioID' is missing

267 Required Data Missing or incorrect format :

268 Failed to Initialize Scheduler

269 Repeat Until time is less than or equal to Start time

270 Error Parsing StartTime and or Duration

271 Error during CreateTask

272 Error creating Trigger

273 Error processing days of week

Page 100: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

100 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: ScheduleWeekly

Schedule a broadcast to a particular Group/ListID to occur on a weekly basis

This function accepts 1 parameter, the request, and returns a response. Function Call: ScheduleWeeklyResponseType ScheduleWeekly(ScheduleWeeklyRequestType myRequest)

The Request Object to be passed in:

ScheduleWeeklyRequestType

Parameter Data Type Description / Values Required?

Username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

BroadcastName String BroadcastName Required

CallerID String CallerID to display, defaults to number on

account Optional

AudioID String AudioID of the message/recording to use Required

ListID String The listID to send the messages to Required

StartDate String

Use MM/DD/YYYY format

The day the recurring message starts

Required

StopDate String

Use MM/DD/YYYY format

The day the recurring message stops

Required

StartTime String

HH:MM Use 24hr clock(users local timezone)

12 – noon 23:59 - midnight

The time of day to make the call

Required

ReOccursXWeeks String Default=1, can can be 2 (every other week) or

3 (every three weeks)4..5..6.. etc Required

DaysOfWeek String

1=true

0=false

Delimiter is a “:”

The system week starts on Sunday

Call only on Sunday, Monday, Tuesday

1:1:1:0:0:0:0

Call only on Wednesday and Saturday

0:0:0:1:0:0:1

Required

AdvancedFlag String To use advanced features set = 1, 0=def Optional

RepeatEvery String

Use an integer number

15 = 15 minutes

37 = 37 minutes

90 = 1 hour and 30 minutes

Nummber of minutes after first call is made

to call again. Be careful system will re-try

if no-answer on a 5-15-15-15 schedule by

default so repeats can be annoying

Only used if Advanced is set = 1

Optional

Page 101: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

101 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

RepeatUntil String

The time to stop repeating the call

Only used if Advanced is set = 1 Optional

SendEmailOnCompletion String

(0/1) Depends on account, set = 1 if you want

an email when your scheduled call is sent,

default = 0

Optional

SMSText String Needed for combo broadcasts

BroadcastType = 3,4 or 5 Optional

BroadcastType Numeric string

1-default Voice Only

3-SMS Only

4-SMS or Voice

5-SMS and VOICE

Optional

Has

default

The Response Object returned by our web service:

ScheduledailyResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

186 Required parameter 'audioID' is missing

267 Required Data Missing or incorrect format :

268 Failed to Initialize Scheduler

269 Repeat Until time is less than or equal to Start time

270 Error Parsing StartTime and or Duration

271 Error during CreateTask

272 Error creating Trigger

273 Error processing days of week

Page 102: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

102 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: SendOptInvitation

Send an invitaion to an SMS number for them to join a group

This function accepts 1 parameter, the request, and returns a response. Function Call: SendOptInvitationResponseType SendOptInvitation(SendOptInvitationRequestType myRequest)

The Request Object to be passed in:

SendOptInvitationRequestType

Parameter Data Type Description / Values Required?

username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

firstName String Persons first name Optional

lastName String Persons last name Optional

invitePhoneNumber Numeric String The SMS capable phone number to invite Required

keyword String The keyword you are inviting them to join Required

message String

60 chars or less description of the group,

do *not* put in join instructions, they will

be added by system

Optional

YisOK String

Def=0 - Require TXT back of Keyword

1 – Allow “Y” response if no other opt-ins

Have been sent or are pending

The Response Object returned by our web service:

SendOptInvitationResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

response Integer The response from the Opt-In sub-system

keyword String The keyword that was acted upon

Message String The system generated portion of the SMS sent, prepended to

your message before being sent

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

186 Required parameter 'audioID' is missing

191 Invalid audioformat specified 0=WAV, 1=MP3

Page 103: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

103 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: UpdateAccountInfo

Updates basic account information (name, address, city, state, zip, company)

This function accepts 1 parameter, the request, and returns a response. Function Call: UpdateAccountInfoResponseType UpdateAccountInfo(UpdateAccountInfoRequestType myRequest)

The Request Object to be passed in:

UpdateAccountInfoRequestType

Parameter Data Type Description / Values Required?

username Numeric String The CEA Username of the account Required

pin Numeric String The CEA Pin of the account Required

firstname String Required

lastName String Required

phone String Required

email String Required

address1 String Optional

address2 String Optional

company String Optional

city String Optional

state String Optional

zip String Optional

Newpin Numeric String Optional

TimeZoneOffset Numeric String Number of hours offset from CST Optional

ObservesDST Numeric String 1-Yes 0-No Optional

The Response Object returned by our web service:

UpdateAccountInfoResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

184 Required parameter 'firstName' is missing

173 Required parameter 'lastName' is missing

182 Required parameter 'phone' is missing

183 Required parameter 'email' is missing

Page 104: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

104 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: UpdateCreditCard

Updates Credit Card information if account has billing issues, will charge account to get back into good status.

This function accepts 1 parameter, the request, and returns a response. Function Call: UpdateCreditCardResponseType UpdateCreditCard(UpdateCreditCardRequestType myRequest)

The Request Object to be passed in:

UpdateCreditCardRequestType

Parameter Data Type Description / Values Required?

Username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

Firstname String Firstname of account holder Required

lastName String Lastname of the account holder Required

address1 String Postal Address Required

address2 String Additional address info if required Optional

city String City name Required

state String 2 digit State abbreviation Required

zip String Zipcode Required

cardType* Numeric String See Function: GetAvailableCreditCardTypes Required

cardNumber Numeric String Credit card number to be processed Required

expYear Numeric String 4 digit year Required

expMonth Numeric String 2 digit month Required

CVN Numeric String Card Verification Number Required

* Visa=0,Mastercard=1,Discover=2,AmericanExpress=3

The Response Object returned by our web service:

UpdateCreditCardResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

184 Required parameter 'firstName' is missing

173 Required parameter 'lastName' is missing

174 Required parameter 'address1' is missing

175 Required parameter 'city' is missing

176 Required parameter 'state' is missing or invalid

177 Required parameter 'zip' is missing or invalid

Page 105: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

105 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

178 Required parameter 'cardNumber' is missing or invalid

179 Required parameter 'expYear' is missing or invalid

180 Required parameter 'expMonth' is missing or invalid

181 Required parameter 'CVN' is missing or invalid

Page 106: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

106 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: UpdatePersonID

Updates a personID (personID can be a member of multiple lists)

This function accepts 1 parameter, the request, and returns a response. Function Call: UpdatePersonIDResponseType UpdatePersonID(UpdatePersonIDRequestType myRequest)

The Request Object to be passed in:

UpdatePersonIDRequestType

Parameter Data Type Description / Values Required?

username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

PersonRecords array

of PersonDetaildata[] Array Person records to be updated Required

PersonDetailData Type:

Parameter Data Type Comments Required?

PersonID Numeric String Required

PrimaryPhone Numeric String Required

Firstname String Optional

LastName String Optional

Notes String Optional

SecondaryPhone Numeric String Optional

TertiaryPhone Numeric String Optional

The Response Object returned by our web service:

UpdatePersonIDResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

updateFailures array

of failedUpdates[] Array Results of the update(s)

failedUpdates Type:

Parameter Data Type Comments

personID Numeric String

reason String

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

Page 107: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

107 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: UpdateSMSInboxStatus

Updates the status of items in the SMSInbox

This function accepts 1 parameter, the request, and returns a response. Function Call: UpdateSMSInboxStatusResponseType UpdateSMSInboxStatus(UpdateSMSInboxStatusRequestType myRequest)

The Request Object to be passed in:

UpdateSMSInboxStatusRequestType

Parameter Data Type Description / Values Required?

Username Numeric String The CEA Username of the account Required

Pin Numeric String The CEA Pin of the account Required

inboxIDs array of

UpdateSMSInboxStatusDetailData[] Array Person records to be updated Required

UpdateSMSInboxStatusDetailData Type:

Parameter Data Type Comments Required?

inboxID Numeric String Required

newStatus Numeric String

Optional

Default=1-mark as read

2-mark as deleted

The Response Object returned by our web service:

UpdateSMSInboxStatusResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful,

otherwise it will return an error code

errorMessage String The error message corresponding with the error

code

UpdateSMSInboxStatusupdateFailures

array of failedUpdates[] Array Results of the update(s)

UpdateFailures Type:

Parameter Data Type Comments

inboxID Numeric String

reason String

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

Page 108: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

108 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: WB_CreateAccount RESTRICTED USE

Creates a new WhiteBox customer account

This function accepts 1 parameter, the request, and returns a response. Function Call: WB_CreateAccountResponseType WB_CreateAccount(WB_CreateAccountRequestType myRequest)

The Request Object to be passed in:

WB_CreateAccountRequestType

Parameter Data Type Description / Values Required? Username Numeric String WhiteBox Customer Account credentials Required

Pin Numeric String WhiteBox Customer Pin Required

FirstName String Customer First name Required

LastName String Customer Last name Required

PhoneNumber Numeric String Preferred 10 digit PhoneNumber (NPA)NXX-XXXX

Used as customer username ( >=5 digits <=15 ) Required

EmailAddress String Assists in support calls Recommended

ObservesDST String (1=Default) 1-Yes, 0-Does not observe Required

TimeZoneOffset String TimeZone offset from CST (default=0) Required

transactionTime String The time of the transaction Required

SecurityHash String

Encrypted contents of previous fields separated

by the "|" character. Contact support to have

your encryption keys issued.

Required

ChargeProvider String

0 or Blank = Apple Store

1 - Android/Google

3 - CEA Credit Card Processing

Recommended

If you need to display a selector for customer input, use the following and return the corresponding value for TimeZoneOffset:

Hawaii -4 Alaska -3

Pacific Time (US & Canada) -2 Arizona -1 Mountain Time (US & Canada) -1

Central Time (US & Canada) 0 Eastern Time (US & Canada) 1

Atlantic Time 2

The Response Object returned by our web service:

WB_CreateAccountResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

AssignedUsername String Newly created username

AssignedPin String Newly created pin

SMSJoinKey String Value for people to opt in to recieve texts.. send to 292929

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

Page 109: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

109 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

Page 110: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

110 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: WB_FundAccount RESTRICTED USE

Adds funds to a WhiteBox customer account

This function accepts 1 parameter, the request, and returns a response. Function Call: WB_FundAccountResponseType WB_FundAccount(WB_FundAccountRequestType myRequest)

The Request Object to be passed in:

WB_FundAccountRequestType

Parameter Data Type Description / Values Required? Username Numeric String WhiteBox Customer Account credentials Required

Pin Numeric String WhiteBox Customer Pin Required

UsernameToCredit String Username of the account to add funds too Required

Memo String Used for tracking/reference Reccomended

NumberOfCredits Numeric String Number of credits to add to account Required

Base64TransactionReceipt String Transaction Receipt for verification Required

transactionTime String Date+Time the transaction occurred Required

SecurityHash String

Encrypted contents of previous fields

Separated by the "|" character. Contact

support to have your encryption keys issued.

Required

The Response Object returned by our web service:

WB_FundAccountResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

usernameToCredit String For asynchronous calls to identify result of particular

transaction

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

TBD TBD

TBD TBD

Page 111: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

111 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: WBCreateAccount RESTRICTED USE / DEPRECATED

Creates a new WhiteBox customer account

This function accepts 1 parameter, the request, and returns a response. Function Call: WBCreateAccountResponseType WBCreateAccount(WBCreateAccountRequestType myRequest)

The Request Object to be passed in:

WBCreateAccountRequestType

Parameter Data Type Description / Values Required? Username Numeric String WhiteBox Customer Account credentials Required

Pin Numeric String WhiteBox Customer Pin Required

UDID String Unique Device ID or Customer Identifier Required

FirstName String Customer First name Required

LastName String Customer Last name Required

PhoneNumber Numeric String Preferred 10 digit PhoneNumber (NPA)NXX-XXXX

Used as customer username ( >=5 digits <=15 ) Required

PinCode Numeric String 5 – 10 digit numeric pincode Required

TimeZoneOffset String TimeZone offset from CST (default=0) Required

ObservesDST String (1=Default) 1-Yes, 0-Does not observe Required

City String Assists in support calls Optional

State String Assists in support calls Optional

Zipcode String Assists in support calls Optional

EmailAddress String Assists in support calls Optional

CallerID Numeric String Depends on Account settings whether this is used Optional

If you need to display a selector for customer input, use the following and return the corresponding value for TimeZoneOffset:

Hawaii -4 Alaska -3

Pacific Time (US & Canada) -2 Arizona -1 Mountain Time (US & Canada) -1

Central Time (US & Canada) 0 Eastern Time (US & Canada) 1

Atlantic Time 2

The Response Object returned by our web service:

WBCreateAccountResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

Page 112: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

112 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

161 Required parameter 'pin' is missing

TBD TBD

TBD TBD

Page 113: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

113 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: WBFundAccount RESTRICTED USE / DEPRECATED

Adds funds to a WhiteBox customer account

This function accepts 1 parameter, the request, and returns a response. Function Call: WBFundAccountResponseType WBFundAccount(WBFundAccountRequestType myRequest)

The Request Object to be passed in:

WBFundAccountRequestType

Parameter Data Type Description / Values Required? Username Numeric String WhiteBox Customer Account credentials Required

Pin Numeric String WhiteBox Customer Pin Required

UDID String UDID of Mobile Device Required

NumberOfCredits Numeric String Number of credits to add to account Required

Memo String Description of transaction or reference-number Optional

The Response Object returned by our web service:

WBFundAccountResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it will

return an error code

errorMessage String The error message corresponding with the error code

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

TBD TBD

TBD TBD

Page 114: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

114 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: WBPreVerifyAccount RESTRICTED USE / DEPRECATED

Verify that UDID and selected Username do not already exist

This function accepts 1 parameter, the request, and returns a response. Function Call: WBPreVerifyAccountResponseType WBPreVerifyAccount(WBPreVerifyAccountRequestType myRequest)

The Request Object to be passed in:

WBPreVerifyAccountRequestType

Parameter Data Type Description / Values Required? Username Numeric String WhiteBox Customer Account credentials Required

Pin Numeric String WhiteBox Customer Pin Required

UDID String UDID of Mobile Device Required

selectedUsername String Username to verify is available Required

The Response Object returned by our web service:

WBPreVerifyAccountResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it

will return an error code

errorMessage String The error message corresponding with the error code

UDIDExists String 0-No UDID does not exist, 1-Yes UDID already exists

selectedUsernameExists String 0-No selectedUsername does not exist, 1-Yes already exists

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

TBD TBD

TBD TBD

Page 115: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

115 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Function: WBUDIDLookup RESTRICTED USE / DEPRECATED

Returns account information for specified UDID

This function accepts 1 parameter, the request, and returns a response. Function Call: WBUDIDLookupResponseType WBUDIDLookup(WBUDIDLookupRequestType myRequest)

The Request Object to be passed in:

WBUDIDLookupRequestType

Parameter Data Type Description / Values Required? Username Numeric String WhiteBox Customer Account credentials Required

Pin Numeric String WhiteBox Customer Pin Required

UDID String UDID of Mobile Device Required

The Response Object returned by our web service:

WBUDIDLookupResponseType

Parameter Data Type Description / Values

errorCode Integer Returns 0 if the function was successful, otherwise it

will return an error code

errorMessage String The error message corresponding with the error code

UDID String The UDID being queried

firstName String First Name

lastName String Last Name

Email String Email Address

Username Numeric String Username associated with this UDID

TimeZoneOffset Numeric String Hours offset from CST

ObservesDST String 0-False 1-True

phoneNumber String The accounts phoneNumber

Return/Error Codes:

Code Description 0 Function executed successfully

-1 Unexpected Error

100 Required parameter missing

104 Authentication failed - username or pin is invalid

105 Account is inactive. Please contact customer support.

107 Account is not authorized to use the CEAAPI

160 Required parameter 'username' is missing

161 Required parameter 'pin' is missing

TBD TBD

TBD TBD

Page 116: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

116 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Perl Example

ExtCreateBroadcast.pl

#!/usr/bin/perl -w # SOAP client for CEA web service

use strict; use SOAP::Lite;

# To turn on SOAP debugging use this # ================================== # use SOAP::Lite +trace => 'all'; # ================================== # # You will need to put in your own values below # # --------------------------------------- # Enter your username below # --------------------------------------- my $username = '9725551212'; # --------------------------------------- # Enter your pin below # --------------------------------------- my $pin = '1212'; # --------------------------------------- # 1 = Announcement # 2 = Survey # 3 = SMS # --------------------------------------- my $broadcastType = '1'; # --------------------------------------- # 1=SavedList; # 2=CSV; # 3=Comma Delimited String of Phone Numbers # --------------------------------------- my $phoneNumberSource = '3'; # --------------------------------------- # Your descriptive broadcast name # --------------------------------------- my $broadcastName = 'My API Test'; # --------------------------------------- # MessageID to use for broadcast # leave blank to receive 8XX number # and message recording ID # or specify TTSText to use our # Text to Speech Engine # --------------------------------------- my $messageID = ''; # --------------------------------------- # caller id to use, if left blank # will use default from your account # --------------------------------------- my $callerID = '9725551212'; # --------------------------------------- # PhoneNumberSource = 3, comma delimited # list of numbers to call # --------------------------------------- my $commaDelimitedPhoneNumbers = '9725551313, 9725552323';

my $PROXY = 'http://staging-API.call-em-all.com/webservices/ceaapi_v2.asmx';

# For Production use this value for $PROXY # ========================================================================= # my $PROXY = 'http://API.call-em-all.com/webservices/ceaapi_v2.asmx'; # =========================================================================

Page 117: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

117 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

my $soap = SOAP::Lite -> uri('http://call-em-all.com') -> on_action( sub { return '"http://call-em-all.com/ExtCreateBroadcast"' } ) -> proxy($PROXY);

my $method = SOAP::Data->name('ExtCreateBroadcast') ->attr({xmlns => 'http://call-em-all.com/'});

my $query = SOAP::Data->name(myRequest => \SOAP::Data->value( SOAP::Data->name(username => $username), SOAP::Data->name(pin => $pin), SOAP::Data->name(broadcastType => $broadcastType), SOAP::Data->name(phoneNumberSource => $phoneNumberSource), SOAP::Data->name(broadcastName => $broadcastName), SOAP::Data->name(ListID => ''), SOAP::Data->name(phoneNumberCSV => ''), SOAP::Data->name(messageID => $messageID), SOAP::Data->name(messageIDVM => ''), SOAP::Data->name(launchDateTime => ''), SOAP::Data->name(checkCallingWindow => '0'), SOAP::Data->name(callerID => $callerID), SOAP::Data->name(commaDelimitedPhoneNumbers => $commaDelimitedPhoneNumbers) ));

my $result = $soap->call($method => $query);

unless ($result->fault) {

my @crecords = $result->valueof('//ExtCreateBroadcastResponse/ExtCreateBroadcastResult');

foreach my $pcval (@crecords) {

print "\n\n\n"; print "Results of Broadcast Creation\n"; print "=====================================================\n"; if(defined $pcval->{'errorCode'})

{ print "ErrorCode = ".$pcval->{'errorCode'}."\n"; } if(defined $pcval->{'errorMessage'})

{ print "ErrorMessage = ".$pcval->{'errorMessage'}."\n"; } if(defined $pcval->{'broadcastID'})

{ print "BroadcastID = ".$pcval->{'broadcastID'}."\n"; } if(defined $pcval->{'messageRecordingID'})

{ print "MsgRecordingID = ".$pcval->{'messageRecordingID'}."\n"; } if(defined $pcval->{'tollFreeNumber'})

{ print "TollFreeNumber = ".$pcval->{'tollFreeNumber'}."\n"; } if(defined $pcval->{'goodRecordCountOnFile'})

{ print "GoodRecCount = ".$pcval->{'goodRecordCountOnFile'}."\n"; } } } else { print join ', ', $result->faultcode, $result->faultstring, $result->faultdetail; } sub scrub { my $arg = shift; if(! defined $$arg || $$arg eq '' || $$arg eq '(null)') { $$arg = undef; } }

Page 118: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

118 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

PHP Example

ExtCreateBroadcast.php

// ===================== // account information // ===================== $username = "999111999"; $pin = "9991";

// ===================== // 1 = Announcement // 2 = Survey // 3 = SMS // ===================== $broadcast_type = "1";

// ================================= // 1 = listID // 2 = CSV Binary attachment // 3 = CommaDelimited Phonenumbers // ================================= $phone_number_source = "3";

// ===================== // Name of the broadcast // ===================== $broadcast_name = "SAMPLE API Broadcast with TTS";

// ======================================== // leave blank to use default from account // ======================================== $caller_id = "9725551212";

// ============================================================================================== // Phonenumbers to call or text (for text/SMS people have to Opt-In to receive) // // Extended usage: phonenumber|firstname|lastname|notes|secondaryPhone|tertiaryPhone> // // ex "9725551212|Grandma|Moses|Some notes here|9725552300,9725552300|test|number,9725554536" // ============================================================================================== $PhoneNumbers = "9725551313, 9725551212, 9305551212";

// =========================================== // Use Text to Speech to generate the message // =========================================== $TTSText = "This is a test of creating a broadcast with text to speech.";

$proxy = "http://staging-api.call-em-all.com/webservices/ceaapi_v2.asmx?WSDL";

$client = new SoapClient($proxy, array("trace" => true));

$request = array ( "username" => $username, "pin" => $pin, "broadcastType" => $broadcast_type, "phoneNumberSource" => $phone_number_source, "broadcastName" => $broadcast_name, "phoneNumberCSV" => "", "launchDateTime" => "", "checkCallingWindow" => "0", "callerID" => $caller_id, "commaDelimitedPhoneNumbers" => $PhoneNumbers, "TTSText" => $TTSText, );

$response = $client->ExtCreateBroadcast(array("myRequest" => $request));

Page 119: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

119 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

// ===================== // var_dump($response); // =====================

print "errorCode :" . $response->ExtCreateBroadcastResult->errorCode . "\n"; print "errorMessage :" . $response->ExtCreateBroadcastResult->errorMessage . "\n"; print "broadcastID :" . $response->ExtCreateBroadcastResult->broadcastID . "\n"; print "messageRecordingID :" . $response->ExtCreateBroadcastResult->messageRecordingID . "\n"; print "tollFreeNumber :" . $response->ExtCreateBroadcastResult->tollFreeNumber . "\n"; print "goodRecordCountOnFile :" . $response->ExtCreateBroadcastResult->goodRecordCountOnFile . "\n"; print "badRecordCountonFile :" . $response->ExtCreateBroadcastResult->badRecordCountOnFile . "\n"; print "duplicateRecordCount :" . $response->ExtCreateBroadcastResult->duplicateRecrodCountOnFile . "\n"; print "totalRecordCount :" . $response->ExtCreateBroadcastResult->totalRecordCountOnFile . "\n";

if (!IsNullOrEmptyString($response->ExtCreateBroadcastResult->fileUploadErrors->ExtFileUploadError)) { foreach ($response->ExtCreateBroadcastResult->fileUploadErrors->ExtFileUploadError as $detail) { print "===================================== \n"; print "Line Number :" . $detail->lineNumber . "\n"; print "errorCode :" . $detail->errorCode . "\n"; print "errorMessage :" . $detail->errorMessage . "\n"; } }

function IsNullOrEmptyString($question) { return (!isset($question) || trim($question)===''); }

Page 120: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

120 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

CheckAccount.php

// ===================== // account information // ===================== $username = "999111999"; $pin = "9991";

$proxy = "http://staging-api.call-em-all.com/webservices/ceaapi_v2.asmx?WSDL"; $client = new SoapClient($proxy, array("trace" => true)); $request = array ( "username" => $username, "pin" => $pin, );

$response = $client->CheckAccount(array("myRequest" => $request)); // ===================== // var_dump($response); // =====================

print "errorCode :" . $response->CheckAccountResult->errorCode . "\n"; print "errorMessage :" . $response->CheckAccountResult->errorMessage . "\n"; if ( $response->CheckAccountResult->errorCode === 0) { print "accountStatus :" . $response->CheckAccountResult->accountStatus . "\n"; print "StatusDescription :" . $response->CheckAccountResult->accountStatusDescription . "\n"; print "CallBalance :" . $response->CheckAccountResult->CallBalance . "\n"; print "PendingCallBalance :" . $response->CheckAccountResult->PendingCallBalance . "\n"; print "AvailableCallUnits :" . $response->CheckAccountResult->AvailableCallUnits . "\n"; } function IsNullOrEmptyString($question) { return (!isset($question) || trim($question)===''); }

Python Examples

CheckAccount.py

#!/usr/bin/python

from suds.client import Client

url = 'http://staging-api.call-em-all.com/webservices/ceaapi_v2.asmx?wsdl'

client = Client(url)

request = client.factory.create('CheckAccountRequestType')

request.username = '999111999'

request.pin = '9991'

response = client.service.CheckAccount(request)

print "ErrorCode :", response.errorCode

print "ErrorMessage :", response.errorMessage

Page 121: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

121 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

if response.errorCode == 0:

print "AccountStatus :", response.accountStatus

print "Status Descr. :", response.accountStatusDescription

print "Call Balance :", response.CallBalance

print "Pending Balance :", response.PendingCallBalance

print "Available Bal :", response.AvailableCallUnits

Page 122: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

122 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

ExtCreateBroadcast.py

(with Proxy)

#!/usr/bin/python

# The suds SOAP client is not included in the default Python

# distribution and must be installed manually either by manual

# download or easy_install.

from suds.client import Client

url = 'http://staging-api.call-em-all.com/webservices/ceaapi_v2.asmx?WSDL'

# If access to CEA is via proxy define the following and

# use as an option in the Client call

proxyOpts = dict()

proxyOpts['http'] = 'http://proxy.domain.com:3128'

client = Client(url, proxy=proxyOpts)

# Create a factory based on the WSDL

request = client.factory.create('ExtCreateBroadcastRequestType')

# Setup the factory based on the WSDL specs

request.username = 99919991

request.pin = 9991

request.broadcastType = 1

request.phoneNumberSource = 3

request.broadcastName = "Sample Create broadcast"

request.messageID = 128342 # -- Refers to an existing broadcast

request.launchDateTime = "6/1/2011 05:00 PM"

request.commaDelimitedPhoneNumbers = "9725551212,9725551313"

result = client.service.ExtCreateBroadcast(request)

if result.errorCode > 0:

print result.errorMessage

else:

print "Broadcast Created Successfully"

Page 123: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

123 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

CheckAccount.py

(with Proxy)

#!/usr/bin/python

# The suds SOAP client is not included in the default Python

# distribution and must be installed manually either by manual

# download or easy_install.

from suds.client import Client

url = 'http://staging-api.call-em-all.com/webservices/ceaapi_v2.asmx?WSDL'

# If access to CEA is via proxy define the following and

# use as an option in the Client call

proxyOpts = dict()

proxyOpts['http'] = 'http://proxy.domain.com:3128'

client = Client(url, proxy=proxyOpts)

# Create a factory based on the WSDL

request = client.factory.create('CheckAccountRequestType')

# Setup the factory based on the WSDL specs

request.username = 99919991

request.pin = 9991

result = client.service.CheckAccount(request)

if result.errorCode > 0:

print result.errorMessage

else:

print "Status: %s" % result.accountStatusDescription

print "Balance: %d" % result.CallBalance

print "Pending: %d" % result.PendingCallBalance

print "Available: %d" % result.AvailableCallUnits

Page 124: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

124 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

GetbroadcastResult.py

(with Proxy)

#!/usr/bin/python

# The suds SOAP client is not included in the default Python

# distribution and must be installed manually either by manual

# download or easy_install.

from suds.client import Client

url = 'http://staging-api.call-em-all.com/webservices/ceaapi_v2.asmx?WSDL'

# If access to CEA is via proxy define the following and

# use as an option in the Client call

proxyOpts = dict()

proxyOpts['http'] = 'http://proxy.domain.com:3128'

client = Client(url, proxy=proxyOpts)

# Create a factory based on the WSDL

request = client.factory.create('GetBroadcastResultRequestType')

# Setup the factory based on the WSDL specs

request.username = 99919991

request.pin = 9991

request.broadcastID = 12543 # references an existing broadcast

request.getBroadcastDetails = 1

request.callResultFilter = '*'

result = client.service.GetBroadcastResult(request)

if result.errorCode > 0:

print result.errorMessage

else:

for detail in result.broadcastDetails.CallDetail:

pho = detail.phoneNumber

acc = detail.firstName

nam = detail.lastName

att = detail.numberOfAttempts

tim = detail.lastCallTime

res = detail.callResultName

print "%-10s %-10s %-10s %s %-25s - %s" % (pho,acc,nam,att,tim,res)

Page 125: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

125 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Bash + cURL Example

GetListContents.sh

#!/bin/bash ( cat <<EOF <soap:envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://wwCw.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:body> <getlistcontents xmlns="http://call-em-all.com/"> <myrequest> <username>##U##</username> <pin>##P##</pin> <listid>##L##</listid> </myrequest> </getlistcontents> </soap:body> </soap:envelope> EOF ) > GetListContents.xml ( cat <<EOF <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/> <xsl:template match="soapenv:Body"> <xsl:copy-of select="child::node()"/> </xsl:template> </xsl:stylesheet> EOF ) > cleanit.xsl clear echo echo echo -n "Enter your Username : " read username echo echo -n "Enter your pin (will not echo) :" read -s pin echo echo echo -n "Enter the ListID to retrieve :" read listid echo cat GetListContents.xml | sed -e s/##U##/"$username"/g | sed -e s/##P##/"$pin"/g | sed -e s/##L##/"$listid"/g > glc.xml clear curl -H "Content-Type: text/xml; charset=utf-8" \ -H "SOAPAction:http://call-em-all.com/GetListContents" \ [email protected] \ http://staging-api.call-em-all.com/webservices/ceaapi_v2.asmx | xsltproc cleanit.xslt -

exit

Page 126: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

126 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

VBA Example

I had to add references to “Microsoft HTML Object Library” and “Microsoft XML, v6.0”

Private Sub TestXMLHTTP()

Dim username As String

Dim pin As String

Dim broadcastType As String

Dim phoneNumberSource As String

Dim broadcastName As String

Dim checkCallingWindow As String

Dim commaDelimitedPhoneNumbers As String

Dim TTSText As String

Rem ===================================

Rem Use your account credentials here

Rem ===================================

username = "999111999"

pin = "9991"

Rem ================================

Rem BroadcastType = Announcement

Rem ================================

broadcastType = "1"

Rem ================================

Rem Source is comma delimited string

Rem ================================

phoneNumberSource = "3"

Rem ================================

Rem The broadcast name

Rem ================================

broadcastName = "Test from Visual Basic"

Rem ================================

Rem Bypass calling window

Rem ================================

checkCallingWindow = "0"

Rem ====================================

Rem The numbers to call comma delimited

Rem ====================================

commaDelimitedPhoneNumbers = "9725551313"

Rem ================================

Rem Use text to speech for the msg

Rem ================================

TTSText = "Hello, This is a text to speech call testing integration with Microsoft Access 2010. Have a nice day."

Rem ===================================

Rem The endpoint (staging/Production)

Rem ===================================

Dim strURL As String

strURL = "http://staging-api.call-em-all.com/webservices/ceaapi_v2.asmx"

Rem For Production use the following

Rem ================================

Rem strURL = "http://api.call-em-all.com/webservices/ceaapi_v2.asmx"

Rem ================================

Page 127: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

127 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Dim FunctionName As String

FunctionName = "ExtCreateBroadcast"

Dim SoapPost As String

SoapPost = "<?xml version=""1.0"" encoding=""utf-8""?>" _

& "<soap12:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance""

← xmlns:xsd=""http://www.w3.org/2001/XMLSchema"" xmlns:soap12=""http://www.w3.org/2003/05/soap-envelope"">" _

& "<soap12:Body>" _

& "<" & FunctionName & " xmlns=""http://call-em-all.com/"">" _

& " <myRequest>" _

& " <username>" & username & "</username>" _

& " <pin>" & pin & "</pin>" _

& " <phoneNumberSource>" & phoneNumberSource & "</phoneNumberSource>" _

& " <broadcastName>" & broadcastName & "</broadcastName>" _

& " <broadcastType>" & broadcastType & "</broadcastType>" _

& " <checkCallingWindow>" & checkCallingWindow & "</checkCallingWindow>" _

& " <commaDelimitedPhoneNumbers>" & commaDelimitedPhoneNumbers & "</commaDelimitedPhoneNumbers>" _

& " <TTSText>" & TTSText & "</TTSText>" _

& " </myRequest>" _

& "</" & FunctionName & ">" _

& "</soap12:Body>" _

& "</soap12:Envelope>"

Rem ================================

Rem Debugging use

Rem ================================

Rem MsgBox (SoapPost)

Rem ================================

Dim xmldoc As Object

Set xmldoc = CreateObject("MSXML2.DOMDocument")

xmldoc.async = False

xmldoc.loadXML (SoapPost)

Dim oReq As Object

Set oReq = CreateObject("MSXML2.XMLHTTP")

Dim oDOM As Object

Set oDOM = CreateObject("MSXML2.DOMDocument.3.0")

oDOM.async = "false"

Dim oNodeList As IXMLDOMNodeList

On Error GoTo ErrRoutine

oReq.Open "POST", strURL, False

oReq.setRequestHeader "Host", "api.call-em-all.com"

oReq.setRequestHeader "Content-Type", "application/soap+xml; charset=""utf-8"""

oReq.setRequestHeader "Content-Length", Len(SoapPost)

oReq.send xmldoc.XML

Rem ================================

Rem Debugging use

Rem ================================

Rem MsgBox (xmldoc.XML)

Rem ================================

oDOM.loadXML (oReq.responseText)

Rem ================================

Rem Debugging use

Rem ================================

Rem MsgBox (oReq.responseText)

Rem ================================

Rem ================================

Rem Destroy the request object

Rem ================================

Set oReq = Nothing

Dim errorCode As String

Dim errorMessage As String

Page 128: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

128 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Rem ================================

Rem Get the result codes

Rem ================================

Set oNodeList = oDOM.getElementsByTagName(FunctionName & "Result/errorCode")

If oNodeList.length = 0 Then

MsgBox ("FAILURE Proper response not returned")

GoTo EndRoutine

Else

errorCode = oNodeList.Item(0).Text

End If

Set oNodeList = oDOM.getElementsByTagName(FunctionName & "Result/errorMessage")

errorMessage = oNodeList.Item(0).Text

MsgBox ("ErrorCode: " & errorCode & vbCrLf & "ErrorMessage: " & errorMessage)

Rem ================================

Rem Use the XML Dom to get any other

Rem data passed back

Rem ================================

Rem ======================

Rem To be completed soon

Rem ======================

EndRoutine:

Exit Sub

ErrRoutine:

MsgBox Err.Number & " - " & Err.Description, _

vbOKOnly Or vbCritical, _

"TestXMLHTTP"

GoTo EndRoutine

End Sub

Page 129: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

129 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

C++ Example

In my searches for a toolkit that allows easy access to SOAP from C++ I found gSOAP, it is a very active project that lives at :

http://gsoap2.sourceforge.net/ This is not an instruction manual for gSOAP, just the steps that I followed to get a working program to consume the Call-Em-All API. If you have questions and have read the docs, send email to [email protected] and we might be able to be of assistance. Installation Steps I followed: I install all custom software in /usr/local/src so in the following examples I assume that as the starting directory for each of the following steps.

1) Install Pre-requsites (cURL)

(install from an account that has appropriate system priviledges)

wget http://curl.haxx.se/download/curl-7.21.3.tar.gz

gunzip curl-7.21.3.tar.gz

tar -xvvf curl-7.21.3.tar

cd curl-7.21.3

./configure --prefix=/usr

make

make install

2) Install gSOAP (install from an account that has appropriate system priviledges)

wget http://sourceforge.net/projects/gsoap2/files/gSOAP/gsoap_2.8.1.zip/download

unzip gsoap_2.8.1.zip

cd gsoap-2.8/

./configure --prefix=/usr

make

make install

Page 130: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

130 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

3) Pulling the Definitions from the webservice mkdir /usr/local/src/CEAAPI

cd /usr/local/src/CEAAPI

cp /usr/local/src/gsoap-2.8/gsoap/typemap.dat .

(I had issues with using std::string so I uncommented the following line in the typemap.dat to use char* strings when the definition gets created)

<<approx line ~219>>

# To use regular char* strings instead of std::string, use:

xsd__string = | char* | char*

wsdl2h -o CEAAPI.h http://staging-api.call-em-all.com/webservices/CEAAPI_v2.asmx?WSDL

soapcpp2 -i CEAAPI.h -I/usr/share/gsoap/import/

The above line creates all of the sources to be included in your application, now it is just C++ programming.

4) A Sample Program

#include "soapH.h" // include header files

#include "soapCEAAPI_USCOREv2Soap12Proxy.h" // get proxy

#include "CEAAPI_USCOREv2Soap12.nsmap" // get namespace bindings

using namespace std;

int main()

{

CEAAPI_USCOREv2Soap12Proxy q;

q.soap_endpoint = "http://staging-api.call-em-all.com/webservices/CEAAPI_v2.asmx";

// for production use once approved

// q.soap_endpoint = "http://api.call-em-all.com/webservices/CEAAPI_v2.asmx";

char *username = "99919991";

char *pin = "9991";

char *broadcastType = "1";

char *phoneNumberSource = "3";

char *broadcastName = "C++ Example";

char *callerID = "9725551212";

char *phoneNumbers = "9725551313";

char *TTSText = "This is an example of launching a text to speech broadcast";

_ns1__ExtCreateBroadcast *Request = new _ns1__ExtCreateBroadcast;

Request->myRequest = new ns1__ExtCreateBroadcastRequestType;

_ns1__ExtCreateBroadcastResponse *Response = new _ns1__ExtCreateBroadcastResponse;

Response->ExtCreateBroadcastResult = new ns1__ExtCreateBroadcastResponseType;

Request->myRequest->username = username;

Request->myRequest->pin = pin;

Request->myRequest->broadcastType = broadcastType;

Request->myRequest->phoneNumberSource = phoneNumberSource;

Request->myRequest->broadcastName = broadcastName;

Request->myRequest->callerID = callerID;

Request->myRequest->commaDelimitedPhoneNumbers = phoneNumbers;

Request->myRequest->TTSText = TTSText;

Page 131: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

131 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

if (q.ExtCreateBroadcast(Request, Response) == SOAP_OK)

{

printf("ErrorCode : %d \n",Response->ExtCreateBroadcastResult->errorCode);

printf("ErrorMessage : %s \n",Response->ExtCreateBroadcastResult->errorMessage);

if (Response->ExtCreateBroadcastResult->errorCode == 0)

{

printf("\n\n");

printf("BroadcastID : %s \n",Response->ExtCreateBroadcastResult->broadcastID);

printf("GoodrecordCount : %d \n",Response->ExtCreateBroadcastResult->goodRecordCountOnFile);

printf("BadRecordCount : %d \n",Response->ExtCreateBroadcastResult->badRecordCountOnFile);

}

}

else

{

printf("\n\nSomething went horribly awry!\n\n");

q.soap_stream_fault(std::cerr);

}

return 0;

}

5) Compiling

g++ -o sample sample.cpp soapC.cpp soapCEAAPI_USCOREv2SoapProxy.cpp

soapCEAAPI_USCOREv2Soap12Proxy.cpp -lgsoap++

(above all on one line)

6) Running the App

SRV1092:/usr/local/src/CEAAPI# ./sample

ErrorCode : 0

ErrorMessage : Operation Successful

BroadcastID : 12939

GoodrecordCount : 1

BadRecordCount : 0

Page 132: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

132 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Visual Studio VB.net & C# Example

In this example I am using VS 2010 Professional with SP1 applied

Open Visual Studio 2010

Older version of Visual Studio would actually have a command/menu “Add Web Reference” But in VS2010 SP1 they have hidden it a few levels down in the menus.

Older Versions of VS If you are using VS2008 or VS2010 without the SP1 then you might have a menu option like the following, if so you can jump over the following few pages where we have to navigate to find the equivalent option.

Page 133: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

133 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Step 1 Creating the Project

Select File -> New Project From the templates on the left select your Programming language of either VB.Net or Visual C# Now select Windows Forms Application from the project types and give it a name.

Project names : c# Project -- "ConsumeWebService" vb.net Project -- “ConsumeWebService-VB”

In this example, I selected .NET Framework 4, but there is no reason that .Net 2.0 would not work. You can find these projects already completed online at :

C# http://cdn.call-em-all.com/files/ConsumeWebService.zip

VB http://cdn.call-em-all.com/files/ConsumeWebService-vb.zip

Page 134: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

134 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Step 2 Build the Form

Now, Expand out the default FORM1 that has been created for you and add the following TextBoxes:

username pin <--- Set as Password Field

commaDelimitedPhonenumbers smsMessage

Labels: (optional)

‘username’ ‘pin’ ‘commaDelimitedPhonenumbers’ ‘smsMessage’

Button: Button1 - Set the text as ‘Send Message’ Your screen should look something like this…

Page 135: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

135 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Step 3 Add the Web Reference

If you are using VS2008 or an RTM version of VS2010 you might have a menu item called “Add Web Reference” under your Project Menu. If not, use the following steps to navigate to the “Add Web Reference” page. We now need to add a reference to the SOAP API for Call-Em-All..

Select Project --> Add Service Reference

Ignore this page.. what we need is at the bottom left, select Advanced

Page 136: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

136 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

You will now be presented with another Screen called “Service Reference Settings”

Again ignore this page and look to the bottom left, and select Add Web Service

Now Finally, this page has a few things that you actually need to fill out (and be careful with)

Page 137: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

137 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

The first thing is to fill in the URL for the Call-Em-All API… then click the little green arrow

http://staging-api.call-em-all.com/webservices/ceaapi_v2.asmx

Your system should think for a second as it queries the API for all the services that it provides.

Here is the GOTCHA you need to look out for.. Visual Studio will “recommend” a Web reference name:

DO *NOT* USE THIS NAME AS YOUR WEB REFERENCE NAME

Page 138: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

138 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Instead use something like CEAAPI_V2

If you try to use the dotted notation, your project may not be able to resolve the reference, and after playing With it for way too long, the simplest solution was to use a simple name and all the build problems went away. After you click the button to add the reference to your Project. You should see the new Web Reference in your Solution Explorer..

We are now ready to hook up our Form to the Web Reference.

Page 139: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

139 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

In your development environment, select FORM1

Now double-click on the button we created in our first steps to get to the “Code Behind” The following pages show sample code in both VB and C# on how to instantiate the API object and to perform an API call to create and send an SMS message.

Page 140: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

140 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

C#

Page 141: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

141 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

VB.Net

Compile and run your project, fill in your account information, the number to send the SMS message to (the number will have had to have opted in before you can message them) See the section in this document called “How Does SMS work at Call-Em-All” and “HOWTO-SMS” for more information.

Page 142: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

142 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

If everything worked correctly, you should have your message delivered…

Page 143: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

143 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

ErrorCodes and ErrorMessages

Any Non-Zero return is an indication that there is a problem with processing the request.

We have an extensive number of error messages that help us diagnose problems that people may be having

while using the API. The detail and level of the messages continues to grow as we add new features, if you

would like to see the entire list, please visit:

http://www.call-em-all.com/dev/API-Errorcodes.aspx

Page 144: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

144 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Extended Descriptions

audioID

An audioID is both the “key” field and “Name” of an Audio message that you have created or

uploaded. Methods that currently save to the audioLibrary : ProvideAudio, CreateTTS

All audioID’s use the following format XXNNNN

ex AA0341

These audioID’s can be used (where specified) in place of a messageID, and have the added advantage

of being stored in a queryable format with several attributes.

You can retrieve your audio Libray contents by using the GetAudioLib method.

public struct GetAudioLibDetailData

{

public string audioID;

public string audioDescription; * upcoming search capability

public string userComment; * upcoming search capability

public Boolean isSalesIntro; <- Currently can search by

public Boolean isAudioTTS; <- Currently can search by

public Int32 audioLength; * upcoming search capability

public DateTime dateAdded; * upcoming search capability

public DateTime dateLastUsed; * upcoming search capability

public Boolean hasSalesIntro; <- Currently can search by

public Boolean favorite; <- Currently can search by

public short messageType; * upcoming search capability

public short Active;

}

broadcastID

A broadcastID is a numeric string that identifies a particular broadcast. These numbers increment as

our system makes calls and are never duplicated. Broadcasts are archived after 90 days. If you need a

broadcast restored for reporting purposes, contact us and we can pull the data back into your account

where it will stay until 2:00am that night, whereupon it *will be* archived again.

broadcastType

The system supports 5 types of broadcasts (currently)

Announcement (type 1) Survey (type 2) SMS/Text Message (type 3) SMS or Voice (type 4)

If a number is opted in to receive SMS/Text messages, they Will get an SMS/Text, all other numbers will get a voice call

SMS and Voice (type 5) All numbers will get a voice call, and SMS opt-ins will additionally get an SMS/Text message

Page 145: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

145 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

An announcement is a call broadcast that delivers information, only one message is recorded or used and the system will deliver it to a live answered call and also do it’s best to deliver to an answering machine. A survey expects a response from the user you can request then to press *0 though *9 and we will Report back which number (0-9) they selected. You record or specify 2 messages for a survey, the first is for when a live answer is detected (the questions are asked) and the second is when we detect an answering machine. You may leave instructions on how to register their response on the voice mail message since they obviously cannot press digits for our sytem when they listen to the recording.

callerID

The phone number to display to the called party.

Note: The local telephone company is responsible for converting the Number to a Name

Also, when you send a call to the phone that actually is the same as the callerID, we replace it with one

of our numbers because a lot of PBX and Cellphones behave differently when they see a call coming

from “themselves”

commaDelimitedPhoneNumbers

This parameter in it’s base form is just like it sounds, a list of phonenumbers each separated by a

comma.

But in order to make things easier for certain customers, this was extended to be able to handle the

submission of extended data. By using the pipe character “|” as a separator you can pass in the

following fields: FirstName, LastName, Notes, SecondaryPhoneNumber, TertiaryPhoneNumber.

This was done because a customer needed to more accurately identify their call results, so they did the

following, passed in PhoneNumber|{customerID}, PhoneNumber|{customerID}

CommaDelimitedPhoneNumbers = “9725551212|a1243, 9725551515|A1267, 9725551212|B3412”

Which when they used the GetBroadcastResult method, they could extract the customerID from the

results, this was important because they may have several accounts at a particular phone number and

they needed to know which account had been called.

public struct CallDetail

{

public string phoneNumber; <- Would have the number called

public string firstName; <- Would contain the CustomerID

public string lastName;

public Int16 numberOfAttempts;

public string lastCallTime;

public Int16 callResult;

public string callResultName;

public string surveyResult;

}

Page 146: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

146 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

listID

A listID is a Numeric string and corresponds to a list that you have created that can contain any

number of contacts. You can retrieve your listID’s by calling GetAvailableLists

launchDateTime

Specifies the date and time to send the broadcast. If left blank/null then the broadcast is scheduled to

go out as soon as it is ready (ie if you are calling in to record audio)

The format for the date and time is : MM/DD/YYYY HH:MM AM/PM

messageID

One of the possibly the most misunderstood parameters. The messageID and messageIDVM were

originally used by providing the broadcastID that had a message you wanted to re-use. Since for

surveys you record 2 messages (one for live answer and one for when we detect an answering

machine etc) and customers wanted to mix and match Live vs Answering machine messages from

different broadcasts we allow you to specify the messageID (broadcastID) and messageIDVM

(broadcastID) from two different broadcasts. When you specify a messageID/IDVM, what the system

does is go to that broadcast and look at the files that it referenced for either the Live answer or the

Voicemail. It then uses the referenced files in the new broadcast.

Functions ExtCreateBroadcast and InsertCustomCall can accept AudioID’s in messageID/IDVM fields.

messageIDVM

See messageID

personID

A person ID is a Numeric string that identifies a contact. A person/contact has the following members:

public struct ListDetailData

{

public string PersonID;

public string PrimaryPhone;

public string FirstName;

public string LastName;

public string Notes;

public string SecondaryPhone;

public string TertiaryPhone;

}

When you use AddNumbersToList you are actually creating PersonIDs you can retrieve these by using GetListContents and update them by using UpdatePersonID and finally you can delete them with DeletePerson

Page 147: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

147 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

phoneNumberCSV

A byte[] array of an uploaded comma delimited file (csv/txt) or a Microsoft® Excel Spreadsheet

In C# you would do something like this to load an Excel file:

byte[] myFinalBuffer;

using (FileStream stream = new FileStream(@”PeopleToCall.xls”, FileMode.Open))

{

myFinalBuffer = new byte[stream.Length];

using (BinaryReader reader = new BinaryReader(stream))

{

reader.Read(myFinalBuffer, 0, (int)stream.Length);

reader.Close();

}

}

myRequest.phoneNumberSource = “2”;

myRequest.phoneNumberCSV = myFinalBuffer;

myResponse = p.CreateBroadcast(myRequest);

phoneNumberSource

For methods that allow you to specify multiple recipient, you need to tell us which method you are

going to use to give us that information

Options are :

Saved List (type 1) CSV/Excel File (type 2) Comma Delimted String (type 3)

If you have an existing list on the system you will then specify it for the listID and select Type 1. If you have a saved file (CSV/TXT or Excel Spreadsheet) you will specify Type 2 and then load the file as a binary array. See the definition for phoneNumberCSV for sample code on how to do this. If you are dynamically building your list, most find it easier to use Type 3 and provide a comma delimited string of numbers. See CommaDelimitedPhoneNumbers for more details on advanced formatting.

pin

Required on every method call. This is the same pin that you would use to access your account on the

website. It is 4-10 Numeric digits. The longer the better.

Page 148: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

148 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

smsMsg

The text to be broadcast to your recipients cellphones. You need to be careful with the length of the

message, the max available for you to use is:

US 160 characters. Canada 120 characters

IMPORTANT NOTE: Your message must be 160 characters or LESS after URLEncoding Special characters can take up to 3 character spaces when they are encoded. Do NOT URLEncode your message, we will check the length on submission and return the appropriate success or an error message if it is too long. Example:

This is a <SPECIAL> Text message! Length = 33 becomes This+is+a+%3CSPECIAL%3E+Text+message! Length = 37

TTSText

The text you wish to have converted to speech and played when the recipient answers the phone. This

field works fine with just text typed in, but you can provide a lot of control over speech, pitch,

pronunciation etc by using SSML (Speech Markup Language) see the chapter on Text-To-Speech

username

Required on every method call. This is the same username that you would use to access your account

on the website. It is 5-10 Numeric digits, we recommend using your primary contact phonenumber.

Page 149: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

149 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Text to Speech

IMPORTANT: You must use single quotes as show in the examples, failure to do so will cause

your audio to either not generate or get truncated

Available Voices

Male: William David Lawrence Female: Callie Allison

Insert this into your TTSText to use the Callie voice: <voice name=’callie’> Insert this into your TTSText to change back* to the William voice: <voice name=’william’> *Yes, you can alternate voices as if they were having a conversation.

Examples of speaking specific data-types

say-as Example How example is read

Cardinal <say-as type='cardinal'>12345</say-as> Twelve thousand three hundred forty five

number:cardinal <say-as type='number:cardinal'>12345</say-as> Twelve thousand three hundred forty five

telephone <say-as type='telephone'>123</say-as> One two three

letters <say-as type='letters'>hello</say-as> H E L L O

spell <say-as type='spell'>hello</say-as> H E L L O

address <say-as type='address'>WA</say-as> Washington

ordinal <say-as type='ordinal'>1</say-as> first

number:ordinal <say-as type='number:ordinal'>1</say-as> first

date_md <say-as type='date_md'>10.20</say-as> October Twentieth

date_mdy <say-as type='date_mdy'>10.20.1998</say-as> October Twentieth Nineteen ninety eight

date:y <say-as type='date:y'>1998</say-as> Nineteen ninety eight

number_digit <say-as type='number_digit'>123</say-as> One two three

time <say-as type='time'>3:45 pm</say-as> Three Fourty-Five P M

telephone <say-as interpret-as='telephone'

format='1'>9725551212</say-as>

Nine seven two <pause> five five five

<pause> one two one two

Page 150: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

150 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Special Pronunciations (Phonetic Spelling)

For an example, to say “Call-Em-All” I would use the following

<phoneme ph='k ao1 l eh1 m ao1 l'>call-em-all</phoneme>

US English

t [t]ap - [t] ae1 p wa[t]er - w ao1 [t] er0 ba[t] - b ae1 [t]

p [p]at - [p] ae1 t cam[p]er - k ae1 m [p] er0 sto[p] - s t aa1 [p]

b [b]ook - [b] uh1 k a[b]rupt - ah0 [b] r ah1 p t ri[b] - r ih1 [b]

d [d]one - [d] ah1 n ca[d]et - k ah0 [d] eh1 t ba[d] - b ae1 [d]

k

[c]amera - [k] ae1 m r ah0 li[k]ely - l ay1 [k] l i0 ar[ch]ite[c]t - aa1 r [k] ih0 t eh0 [k] t ja[ck] - jh ae1 [k]

g [g]ood - [g] uh1 d bi[gg]er - b ih1 [g] er0 pe[g] - p eh1 [g]

ch

[ch]art - [ch] aa1 r t [c]ello - [ch] eh1 l ow0 na[t]ure - n ey1 [ch] er0 cat[ch] - k eh1 [ch]

jh

[j]ack - [jh] ae1 k di[g]it - d ih1 [jh] ih0 t sol[d]ier - s ow1 l [jh] er0 fu[dg]e - f ah1 [jh]

f

[f]at - [f] ae1 t tele[ph]one - t eh1 l ih0 [f] ow0 n stu[ff] - s t ah1 [f] lau[gh] - l ae1 [f]

v [v]arious - [v] eh1 r i0 ih0 s ha[v]e - h ae1 [v] o[f] - ah1 [v]

th [th]in - [th] ih1 n

Page 151: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

151 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

ma[tth]ew - m ae1 [th] j uw0 ba[th] - b ae1 [th]

dh [th]en - [dh] eh1 n ba[th]ing - b ey1 [dh] ih0 ng brea[th]e - b r i0 [dh]

s

[s]it - [s] ih1 t [ps]ychology - [s] ay0 k aa1 l ih0 jh i0 mi[c]e - m ay1 [s] ma[ss] - m ae1 s

z

[z]ero - [z] i0 r ow0 [x]ylophone - [z] ay1 l ah0 f ow0 n qui[z] - k w ih1 [z] boy[s] - b oy1 [z]

sh

[sh]ip - sh ih1 p [s]ure - [sh] er1 o[c]ean - ow1 [sh] ih1 n cla[sh] - k l ae1 [sh]

zh vi[s]ion - v ih1 [zh] ah0 n ca[s]ual - k ae1 [zh] uw0 ah0 l mira[g]e - m ih0 r aa1 zh

h [h]ello - [h] eh0 l ow1 loop[h]ole - l uw1 p [h] ow0 l

m [m]an - [m] ae1 n co[mm]on - k aa1 [m] ah0 n ga[m]e - g ey1 [m]

n [n]ew - [n] uw1 ca[nn]on - k ae1 [n] ah0 n ma[n] - m ae1 [n]

ng ba[ng] - b ae1 [ng] sitti[ng] - s ih1 t ih0 [ng]

r [r]eason - [r] i1 z ah0 n ba[rr]el - b eh1 [r] ah0 l ca[r] - k aa1 [r]

l [l]ate - [l] ey1 t me[ll]on - m eh1 [l] ah0 n fu[ll] - f uh1 [l]

j [y]ellow - [j] eh1 l ow1 b[ea]uty - b [j] uw1 t i0 will[i]am - w ih1 l [j] ah0 m

w

[w]ater - [w] ao1 t er0 q[u]een - k [w] i1 n cob[w]eb - k aa1 b [w] eh0 b [wh]ether - [wh] eh1 dh er0

i [ea]r - [i1] r sh[ee]p - sh [i1] p k[ey] - k [i1]

ih [i]mage - [ih1] m [ih0] jh b[i]t - b [ih1] t

Page 152: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

152 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

sh[i]p - sh [ih1] p

eh [e]nd - [eh1] n d g[e]t - g [eh1] t f[ea]ther - f [eh1] dh er0

ae [a]frica - [ae1] f r ih0 k ah0 c[a]t - k [ae1] t b[a]nk - b [ae1] ng k

aa [a]ria - [aa1] r i0 ah1 f[a]ther - f [aa1] dh er0 c[a]lm - k [aa1] l m

er [ear]th - [er1] th b[ir]d - b [er1] d m[er]ge - m [er1] jh

ah [a]bout - [ah0] b aw1 t b[u]t - b [ah1] t m[o]nkey - m [ah1] ng k i0

ao [aw]e - [ao1] b[ou]ght - b [ao1] t d[oo]r - d [ao1] r

uh b[oo]k - b [uh1] k f[u]ll - f [uh1] l c[ou]ld - k [uh1] d

uw

[oo]ps - [uw1] p s m[oo]n - m [uw1] n f[oo]l - f [uw1] l ch[ew] - ch [uw1]

ay [i]vy - [ay1] v i0 pr[i]de - p r [ay1] d b[uy] - b [ay1]

aw [ou]t - [aw1] t h[ou]se - h [aw1] s c[ow] - k [aw1]

oy [oy]ster - [oy1] s t er0 b[oy] - b [oy1]

ow [o]bey - [ow0] b ey1 fl[oa]t - f l [ow1] t m[ow] - m [ow1]

ey [a]te - [ey1] t b[a]con - b [ey1] k ah0 n spr[ay] - s p r [ey1]

Page 153: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

153 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Inserting Pauses

<break strength='none'/>

<break strength='x-weak'/>

<break strength='weak'/>

<break strength='medium'/>

<break strength='strong'/>

<break strength='x-strong'/>

Prosody - Changing the pitch, range, rate and volume

<prosody>

This tag controls the pitch, range, speaking rate, and volume of the text. All attributes are optional, but if no attribute is given an error results. Here is a description of the optional attributes:

pitch=

This attribute modifies the baseline pitch for the text enclosed within the tag. Accepted values are either:

a number followed by the Hz designation a relative change 'x-low' 'low' 'medium' 'high' 'x-high' 'default'

range=

This attribute modifies the pitch range for the text enclosed within the tag. Accepted values for this attribute are the same as the accepted values for pitch.

rate=

This attribute indicates a change in the speaking rate for contained text, accepted values are:

a relative change a positive number 'x-slow' 'slow' 'medium' 'fast' 'x-fast' 'default'

Page 154: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

154 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

The rate is specified in terms of words-per-minute. If the speaking rate is 50 words per minute, then rate=50. If the setting is rate=+10, the speaking rate will be 10 words per minute faster than your current rate setting. Note: When rate is set to a positive number, the implementation is not compliant with the current W3C prosody rate attribute specification.

Volume=

This attribute modifies the volume for the contained text. The range for values is "0.0" to "100.0" or the relative values of :

'silent' 'x-soft' 'soft' 'medium' 'loud' 'x-loud' 'default'

Examples: <prosody pitch='150Hz'> Modified pitch </prosody>

<prosody pitch='-20Hz'> Modified pitch </prosody>

<prosody pitch='+20Hz'> Modified pitch </prosody>

<prosody pitch='-12st'> Modified pitch </prosody>

<prosody pitch='+12st'> Modified pitch </prosody>

<prosody pitch='x-low'> Modified pitch </prosody>

<prosody range='150Hz'> Modified pitch range</prosody>

<prosody range='-20Hz'> Modified pitch range</prosody>

<prosody range='+20Hz'>Modified pitch range</prosody>

<prosody range='-12st'>Modified pitch range</prosody>

<prosody range='+12st'>Modified pitch range</prosody>

<prosody range='x-high'>Modified pitch range</prosody>

<prosody rate='slow'>Modified speaking rate</prosody>

<prosody rate='+25'>Modified speaking rate</prosody>

<prosody rate='-25'>Modified speaking rate</prosody>

<prosody volume='88.9'>Modified volume</prosody>

<prosody volume='loud'>Modified volume</prosody>

<prosody rate='x-slow'> I talk really slow. </prosody>

<prosody rate='slow'> I talk slow. </prosody>

<prosody rate='medium'> I talk at a medium pace. </prosody>

<prosody rate='fast'> I talk fast. </prosody>

<prosody rate='x-fast'> I talk very fast. </prosody>

<prosody rate='default'> I talk normally. </prosody>

Page 155: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

155 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Staging Considerations

The staging site behaves identical to the production site in almost every fashion except for the following items:

SMS

When sending messages destined for the staging system, you MUST preface all of your SMS messages

with ‘callem ‘

Example: To join a group on the production system you would text the ‘Keyword’ or ‘join Keyword’ to our shortcode of 292929 For staging your message would need to be ‘callem Keyword’ or ‘callem join Keyword’ The callem at the beginning of the message lets our system know that the message is intended for the staging database, not the production database. See HOWTO-SMS

Voice

The staging system has a limited number of outbound ports for making calls. It also does not check the Database as frequently looking for calls to be made. Calls will go out on a much slower basis than what you will see in the production system. Most obviously the 8XX numbers to access different features are different.

Application Production Staging

Message recording with a messageID 866-623-7244 866-284-4401

Log in with User/Pin Immediate Launch 866-623-7525 866-283-1118

Record Sales Introduction message 866-284-5331 N/A

Opt-Out Line 866-284-6198 N/A

Message recording with a messageID (no branding) 877-565-8460 N/A

Play Last message sent to the Calling Number 877-565-8456 N/A

Page 156: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

156 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

How Does SMS work at Call-Em-All

At Call-Em-All, we are very careful to follow both the letter and spirit of the FTC and FCC guidelines imposed on

our industry. We may seem inflexible on some things, but trust me, it’s better than having your service

completely cut off.

1) To send a text message to a cellphone that cellphone user has to have OPTED IN to receive your

messages.

Why is this? Well the main reason is that for a lot of people, TXT messages are not included in their

phone plans. That means that a message from you may cost THEM up to 25c in some cases. This can

add up and I am sure you do not want to be responsible for someone not being able to afford their cell

phone bill.

2) How do I accomplish this?

Opting in is as simple as sending an SMS/Text message. Our system allows you to set up keywords

which you tie to a particular group/ListID. For example you pick the keyword “MONEY”. In order to

join your group or “OPT IN” to receive messages from you, all a person would have do is Text the word

“MONEY” to Call-Em-All’s shortcode [292929]. Sending this message implies that they want to

receive messages from you. Conversely they can also send STOP MONEY to [292929] and they would

in essense revoke your ability to send them Text messages.

3) What tools are available to manage this?

Call-Em-All provides you with your own custom URL that you can link to. This page will tell people the

steps on how to Join or “OPT IN” to receive your messages.

In this example, the keyword selected is “MYLIFE”. After you have created your keyword you will be

able to use the following URL (with your own keyword of course) on your webpage or print media to

give people instructions on how to OPT IN.

http://www.call-em-all.com/join/MYLIFE

Page 157: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

157 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Your page will look something like this:

4) How can I use the API to manage this?

Our API currently has the following function: GetSMSOptIns

You call the function, pass in a ListID and it will give you the results of who is currently Subscribed or OPTED IN to that list.

You are able to tie different keywords to different groups (think list or ListID), the easiest is to have multiple sub keywords, in the previous example the keyword we used was “MYLIFE”, this is your BASE keyword, anyone texting into it is added to your “Everyone” listing. If you wanted to break people up into more specific groups for certain messages, you could do the following: On one of your existing lists you would add a sub-keyword. In this example we are going to use the sub-keyword “KIDS”, this is for people who only want to receive messages from me that relate to “KIDS” or Kid-safe conten. They would text “MYLIFE.KIDS” to [292929] and their phone would be opted in to receive messages only broadcast to the “Kids” list.

Another example might be that a Church might have a keyword FUMCPLANO and have different lists for specific notifications, such as:

FUMCPLANO.CHOIR FUMCPLANO.ELDERS FUMCPLANO.MEN FUMCPLANO.TEENS

A person who is both a Teen and a Quoir member could sign up for just the messages they wanted by joing only FUMCPLANO.CHOIR and FUMCPLANO.TEENS

Page 158: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

158 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

HOWTO-SMS

This applies to developers working on the staging system, the following shows the similarities and differences between working in Staging and Production. Differences will be highlighted like this. This assumes you have an account set up on http://staging.call-em-all.com

Enabling Text on an Account

When you first log-in you will see the following on the left side of the screen on your “Home” page

You will see the option “Want to send texts?” Click this Link and you will be taken to a set of steps, where you will need to Select “Create Keyword”

Now select your Keyword. Your keyword is what people will use to OPT-IN to receive TEXT/SMS messages from your account. In this example the company name is ACME Widgets, and most people recognize the name so we are going to take advantage of that and set our keyword to “ACME”. *The keyword is NOT case sensitive.

Page 159: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

159 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

There are 2 additional items you can enter:

1) An Authorized Phone Number

This is where you can set up an actual phone to be able to initiate SMS messages to the People who opt in to your Keyword(s) *more on additional keywords later

2) A Custom Auto-Reply Message

This is a message that you can enter that will be sent as an Automatic Response when someone OPTS-IN To receive messages from you, it may be just a welcome greeting or something special like “Show this Text the next time you visit us for a special bonus”

*NOTE: For each Auto-Reply message we send out you are charged 1 credit

Page 160: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

160 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

How to Opt People in

There are several ways to get people to opt in, print it in your Literature, Put it on your website, send out a voice broadcast telling people that they can OPT-IN to receive Text messages from you instead of phone calls or email your client or member base with the instructions. We also now have the API function, SendOptInvitation where you can send out invitations to People to opt-in to receive your messages. 1 invitation per number every 90 days

PRODUCTION OPT IN This is where things are just a little bit different, for a production account people can OPT-IN to receive messages by sending either of the following 2 messages to Short Code 292929 Join ACME -> sent to short code 292929 or ACME -> sent to short code 292929

STAGING OPT IN

Page 161: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

161 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

Presumably, if you are reading this document, you are working in the STAGING system with the API. So how do people OPT-IN to the staging system so you can test your code? The only one difference is that when they OPT-IN (or send replies etc) they need to PREFACE their text with the word “callem “. No quotes please but there does need to be a space after the callem prefix. So their Join/OPT-IN would look like this:

callem Join ACME -> sent to short code 292929 or callem ACME -> sent to short code 292929

Other than this one difference, all functionality between production and staging are the same.

Page 162: Call-Em-All Web Service / API

Call-Em-All Web Service / API

Version 3.2.13 (6.8.2012) Revised and Updated

162 | P a g e

Sample code is provided by Call-Em-All LLC (“CEA”) for use with CEA applications only. Sample code provided by CEA in text, images, video, and any

other media contained on this site is for learning purposes only. Sample code is provided “as is” with no warranties of any kind, express or implied.

The 10,000 foot view

(in Progress…)

Call-Em-All and the Call-Em-All API have many different uses and usage scenarios, I am going to identify some

of these at a high level and then drill into each implementation in more detail in hopes of finding something

close to what our customers may want to develop, therefore providing more of a roadmap or How-To.

1) Emergency Notification

2) Job fills and Surveys

3) Response based or end user initiated messages