Public data services using a token (public API)
The purpose of the public Engaging Networks Data Services is to provide anonymised data and non-sensitive information which may be useful in order to provide social proofing for advocacy or fundraising campaigns, and to offer supporting services that can be used for an at a glance overview of certain aspects of ongoing account activity, without needing to access the Engaging Networks dashboard.
For an overview of all of our data services, click here.
Before you launch any code based on the use of these services, please ensure you have thoroughly tested that the calls are returning the data you are expecting.
Getting Started
Before you can make any calls, you will need to obtain the public token for your account. This can be found in the Account settings, under Tokens in the dashboard. You will need to be a sub-account admin to be able to access this.
The public token may be freely shared with developers or agencies over email, as it is not considered confidential information, and will not give access to any personal data held in your database.
Do not confuse public tokens with private tokens, which do require special care when handling and should only ever be shared over a secure medium.
The data returned by these calls is cached in a reporting table. This reporting table is refreshed every 15 minutes, so new actions won’t immediately increase the count.
Base URL
The calls are made by accessing a URL directly. This also allows you to access the URL in a web-browser where you are able to see the output of the calls you are making before you start writing any code to process the results. The base URL for the calls is:
https://us.engagingnetworks.app/ea-dataservice/data.service?service= (U.S. server)
https://ca.engagingnetworks.app/ea-dataservice/data.service?service= (Canada server)
The services are served over HTTPS. Unencrypted HTTP is supported, but not recommended.
Authentication
Authentication is performed with each call by passing the ‘token’ parameter as part of the URL.
Data formats available
You are able to specify which format you would like the data to be delivered in. The service supports XML, JSON as well as CSV. If you do not specify which format you require, the default is XML. If you are building tools that will be designed to be run on a page, the recommended format is JSON, as it is very compact and easily parseable in the JavaScript language.
In order to specify the data format, you can pass the ‘contentType’ parameter. Accepted values are xml, json and csv.
The ‘contentType’ parameter can be applied to all calls.
Overview of calls
Call | Description |
ActiveJobs | Returns an overview of the current status of all active jobs running in your account. |
EaEmailAOTarget | Returns either a summary of the campaign progress or the date and time of the latest submissions. Can be used for ‘roll-call’ type applications, ‘latest to sign’ etc. |
EaEmailAOTargetContact | Retrieves information about the contact(s) reachable by a particular Email to Target campaign. |
EaDataCapture | Returns the latest participations for a Data Capture type campaign page. |
EaSupporterQuestionResponse | Returns the latest answers to a question identified by id. |
NetDonor | Returns a summary of donations received by a particular page, or a donations received from individual supporters (anonymised). |
ContactsByParty | Display the number of contacts belonging to each party within a database. |
AccountReports | Provides sets of reports about account activity for the given public token. |
EaAOContactData | Returns data held about contact(s) in an Engaging Networks provided contact database. |
EaAOContactDataByPostcode | Returns data held about a particular contact, identified by postcode, in an Engaging Networks provided contact database. |
EaSupporterCount | Return a count of supporter/constituent records in the constituent record database associated with the provided public token. |
EaCampaignInfo | Provides basic information about a campaign identified by campaignId. |
EaBroadcastInfo | Displays summary information about broadcast(s) in the account. |
EaReferenceData | Retrieves a client uploaded ‘Reference Data’ file which can be used to augment the information available for particular contacts. |
FundraisingSummary | Return per-currency summary information (number of donations and amount) about a fundraising campaign. |
FundraisingSummaryByPage | Return information about the number of single and recurring donations for a specific date range, together with amounts in the reporting currencies USD, GBP, EUR, CAD, AUD only. (NOTE: this call does not return test transactions). |
RollCall | Returns a list of the latest supporters to participate in the campaign identified by campaignId. |
FundraisingRollCall | Returns the latest supporters to donate to a campaign, together with currency and amount. |
SupporterData | Returns output detailing which tagged data fields contain data for a supporter identified by email address. |
BroadcastMessageAttribute | Returns output detailing which tagged data fields contain data for a supporter identified by email address. |
ProfileCount | Returns the number of matching supporters for a particular profile. |
JourneyMessageDetails | Returns the current workflows set up in the account. |
EventDetails | Returns event details for upcoming events (start date in the future.) |
ActiveJobs
Description: Returns an overview of the current status of all active jobs running in your account.
Parameters:
None required
Sample call: https://ca.engagingnetworks.app/ea-dataservice/data.service?service=ActiveJobs&token=your-token-here
Sample output:
<EaData>
<EaRow>
<EaColumn name="JOB ID" type="xs:int">12447</EaColumn>
<EaColumn name="JOB NAME" type="xs:string">User data export 17/07/2018 07:49 AM</EaColumn>
<EaColumn name="PERCENT COMPLETE" type="xs:decimal">100</EaColumn>
</EaRow>
<EaRow>
<EaColumn name="JOB ID" type="xs:int">12449</EaColumn>
<EaColumn name="JOB NAME" type="xs:string">User data export 17/07/2018 07:49 AM</EaColumn>
<EaColumn name="PERCENT COMPLETE" type="xs:decimal">100</EaColumn>
</EaRow>
</EaData>
Result Limit / Max Rows returned: N/A
EaEmailAOTarget
Description: Returns either a summary of the campaign progress or the date and time of the latest submissions. Can be used for ‘roll-call’ type applications, ‘latest to sign’ etc.
Parameters
Name | Data Type | Required | Values | Description |
campaignId | integer | true | The Email to Target campaign to be used. Multiple IDs can be added separated by a comma | |
resultType | string | false | summary | Mandatory |
Sample call (summary):
Sample output:
<EaData>
<EaRow>
<EaColumn name="campaignId" type="xs:int">6748</EaColumn>
<EaColumn name="campaignName" type="xs:string">Contact MP</EaColumn>
<EaColumn name="pageHits" type="xs:int">92034</EaColumn>
<EaColumn name="registrations" type="xs:int">4056</EaColumn>
<EaColumn name="emailsSent" type="xs:int">3930</EaColumn>
<EaColumn name="participatingSupporters" type="xs:int">4056</EaColumn>
</EaRow>
</EaData>
$body
Result Limit / Max Rows returned: N/A
EaEmailAOTargetContact
Description: Retrieves information about the contact(s) reachable by a particular Email to Target campaign.
Parameters
Name | Data Type | Required | Values | Description |
campaignId | integer | true | The Email to Target campaign that will be used to identify the contact set. | |
postcode | string | false | If provided the call will return details about the contact(s) relevant only for this postcode. |
Sample call:
Sample output:
<EaData>
<EaRow>
<EaColumn name="contactId" type="xs:int">11914</EaColumn>
<EaColumn name="title" type="xs:string">Ms</EaColumn>
<EaColumn name="firstName" type="xs:string">Emily</EaColumn>
<EaColumn name="lastName" type="xs:string">Thornberry</EaColumn>
<EaColumn name="suffix" type="xs:string">MP</EaColumn>
<EaColumn name="organization" type="xs:string">Islington South and Finsbury</EaColumn>
<EaColumn name="positionHeld" type="xs:string">Shadow Foreign Secretary</EaColumn>
<EaColumn name="party" type="xs:string">Labour</EaColumn>
</EaRow>
</EaData>
Result Limit / Max Rows returned: N/A
EaDataCapture
Description: Return the latest participations for a Data Capture type campaign page.
Parameters:
Name | Data Type | Required | Values | Description |
campaignId | integer | true | The Data Capture campaign to provide data for. Multiple IDs can be added separated by a comma | |
resultType | string | false | summary | Mandatory |
Sample call: https://ca.engagingnetworks.app/ea-dataservice/data.service?service=EaDataCapture&token=your-token-here&campaignId=113757&resultType=summary
Sample output:
<EaData>
<EaRow>
<EaColumn name="campaignId" type="xs:int">113757</EaColumn>
<EaColumn name="campaignName" type="xs:string">
<![CDATA[ data.service: petition
Result Limit / Max Rows returned: N/A
EaSupporterQuestionResponse
This call may be switched off for UK and EU clients. Please contact the support team if you wish to use this call
Description: Returns the latest answers to a question identified by id.
Parameters:
Name | Data Type | Required | Values | Description |
questionId | integer | true | The numerical identifier of a question in the account | |
responseOrder | string | false | ascending, descending | Order the returned results first to last or last to first (by timestamp). Default: descending |
Sample output:
<EaData>
<EaRow>
<EaColumn name="firstName" type="xs:string">Josip</EaColumn>
<EaColumn name="city" type="xs:string">Peterborough</EaColumn>
<EaColumn name="region" type="xs:string">Cambridgeshire</EaColumn>
<EaColumn name="postcode" type="xs:string">PE73JU</EaColumn>
<EaColumn name="country" type="xs:string">GB</EaColumn>
<EaColumn name="questionId" type="xs:int">952</EaColumn>
<EaColumn name="supporterId" type="xs:int">2349842</EaColumn>
<EaColumn name="response" type="xs:string">The campaign was marvellous</EaColumn>
</EaRow>
</EaData>
Demo: see https://github.com/EngagingNetworks/page-builder-code-blocks/blob/master/display-recent-responses-to-questions.md
Result Limit / Max Rows returned: 1000
NetDonor
Description: Returns a summary of donations received by a particular page, or a donations received from individual supporters (anonymised).
Parameters:
Name | Data Type | Required | Values | Description |
campaignId | integer | true | The numerical identifier of the campaign. | |
resultType | string | false | summary | Mandatory |
Sample output:
<EaData>
<EaRow>
<EaColumn name="campaignId" type="xs:int">3557</EaColumn>
<EaColumn name="campaignName" type="xs:string">iATS live</EaColumn>
<EaColumn name="pageHits" type="xs:int">0</EaColumn>
<EaColumn name="registrations" type="xs:int">34</EaColumn>
<EaColumn name="participatingSupporters" type="xs:int">13</EaColumn>
<EaColumn name="total amount donated" type="xs:decimal">202704935</EaColumn>
<EaColumn name="highest amount donated" type="xs:decimal">20067</EaColumn>
<EaColumn name="average amount donated" type="xs:decimal">9238.22</EaColumn>
</EaRow>
</EaData>
Result Limit / Max Rows returned: N/A
ContactsByParty
Description: Display the number of contacts belonging to each party within a database.
Parameters:
Name | Data Type | Required | Values | Description |
constituencyDatabaseId | integer | true | The ID number of the contact database you would like to look connect with. | |
resultType | string | false | summary |
Sample output:
<EaData>
<EaRow>
<EaColumn name="constituencyDatabaseId" type="xs:int">1</EaColumn>
<EaColumn name="party" type="xs:string">Independent</EaColumn>
<EaColumn name="count" type="xs:int">2</EaColumn>
</EaRow>
</EaData>
Result Limit / Max Rows returned: N/A
AccountReports
Description: Provides sets of reports about account activity for the given public token.
Parameters:
Name | Data Type | Required | Values | Description |
startDate | date | true | DD/MM/YYYY | The starting date for your report |
endDate | date | true | DD/MM/YYYY | The end date for your report |
resultType | string | true |
newjoins,accounttotals,netdonortransactions, netdonoramounts,broadcaststats | The type of report required |
Note If you do not supply the resultType parameter, the call will default to pull the ‘accounttotals’ report.
Sample output:
newjoins
<EaData>
<EaRow>
<EaColumn name="Type" type="xs:string">total activity</EaColumn>
<EaColumn name="Count" type="xs:int">870</EaColumn>
</EaRow>
<EaRow>
<EaColumn name="Type" type="xs:string">tell-a-friend</EaColumn>
<EaColumn name="Count" type="xs:int">4</EaColumn>
</EaRow>
<EaRow>
<EaColumn name="Type" type="xs:string">email to target</EaColumn>
<EaColumn name="Count" type="xs:int">413</EaColumn>
</EaRow>
<EaRow>
<EaColumn name="Type" type="xs:string">data capture</EaColumn>
<EaColumn name="Count" type="xs:int">453</EaColumn>
</EaRow>
</EaData>
accounttotals
<EaData>
<EaRow>
<EaColumn name="Type" type="xs:string">total</EaColumn>
<EaColumn name="Count" type="xs:int">44125</EaColumn>
</EaRow>
<EaRow>
<EaColumn name="Type" type="xs:string">import</EaColumn>
<EaColumn name="Count" type="xs:int">21994</EaColumn>
</EaRow>
<EaRow>
<EaColumn name="Type" type="xs:string">jamii</EaColumn>
<EaColumn name="Count" type="xs:int">0</EaColumn>
</EaRow>
<EaRow>
<EaColumn name="Type" type="xs:string">netdonor</EaColumn>
<EaColumn name="Count" type="xs:int">21959</EaColumn>
</EaRow>
<EaRow>
<EaColumn name="Type" type="xs:string">e-activist</EaColumn>
<EaColumn name="Count" type="xs:int">172</EaColumn>
</EaRow>
</EaData>
netdonortransactions
<EaData>
<EaRow>
<EaColumn name="Type" type="xs:string">failed donations</EaColumn>
<EaColumn name="Count" type="xs:int">5.0</EaColumn>
</EaRow>
<EaRow>
<EaColumn name="Type" type="xs:string">successful donations</EaColumn>
<EaColumn name="Count" type="xs:int">29527.0</EaColumn>
</EaRow>
</EaData>
netdonoramounts
<EaData>
<EaRow>
<EaColumn name="Currency" type="xs:string">GBP</EaColumn>
<EaColumn name="Total" type="xs:decimal">2384490.0</EaColumn>
<EaColumn name="Average" type="xs:decimal">357.44</EaColumn>
</EaRow>
</EaData>
broadcaststats
<EaData>
<EaRow>
<EaColumn name="Type" type="xs:string">number of emails</EaColumn>
<EaColumn name="Count" type="xs:decimal">3509.0</EaColumn>
</EaRow>
<EaRow>
<EaColumn name="Type" type="xs:string">number of bounces (soft)</EaColumn>
<EaColumn name="Count" type="xs:decimal">0.0</EaColumn>
</EaRow>
<EaRow>
<EaColumn name="Type" type="xs:string">number of bounces (hard)</EaColumn>
<EaColumn name="Count" type="xs:decimal">0.0</EaColumn>
</EaRow>
<EaRow>
<EaColumn name="Type" type="xs:string">percentage completion</EaColumn>
<EaColumn name="Count" type="xs:decimal">1.51</EaColumn>
</EaRow>
<EaRow>
<EaColumn name="Type" type="xs:string">percentage open rate</EaColumn>
<EaColumn name="Count" type="xs:decimal">7.41</EaColumn>
</EaRow>
<EaRow>
<EaColumn name="Type" type="xs:string">percentage click through</EaColumn>
<EaColumn name="Count" type="xs:decimal">2.76</EaColumn>
</EaRow>
<EaRow>
<EaColumn name="Type" type="xs:string">total broadcasts</EaColumn>
<EaColumn name="Count" type="xs:decimal">279.0</EaColumn>
</EaRow>
</EaData>
Result Limit / Max Rows returned:
newjoins: 4
accounttotals: 4
netdonortransactions: 2
netdonoramounts: If a donation page accepts multiple currencies, there will be one row per currency.
broadcaststats: 7
EaAOContactData
Description: Returns data held about contact(s) in an Engaging Networks provided contact database.
Parameters:
Name | Data Type | Required | Values | Description |
constituencyDatabaseId | integer | true | The ID number of the contact database you would like to look connect with. | |
postcode | string | false | Limit results to the contact(s) identified for a single postcode only. |
Sample output:
<EaData>
<EaRow>
<EaColumn name="contactId" type="xs:int">372</EaColumn>
<EaColumn name="title" type="xs:string">Ms</EaColumn>
<EaColumn name="firstName" type="xs:string">Emily</EaColumn>
<EaColumn name="lastName" type="xs:string">Thornberry</EaColumn>
<EaColumn name="suffix" type="xs:string">MP</EaColumn>
<EaColumn name="organization" type="xs:string">Islington South and Finsbury</EaColumn>
<EaColumn name="positionHeld" type="xs:string"></EaColumn>
<EaColumn name="telephone" type="xs:string"></EaColumn>
<EaColumn name="BIO_1" type="xs:string"></EaColumn>
<EaColumn name="BIO_2" type="xs:string">
<b>Date of Birth:</b> 27/07/1960
</EaColumn>
<EaColumn name="BIO_3" type="xs:string">
<b>Education:</b> University of Kent
</EaColumn>
<EaColumn name="BIO_4" type="xs:string">
<b>Occupation:</b> Barrister
</EaColumn>
<EaColumn name="BIO_5" type="xs:string">
<b>Political Experience:</b> Elected as Member of Parliament for Islington South & Finsbury in 2005
</EaColumn>
<EaColumn name="BIO_6" type="xs:string">
<b>Memberships:</b> Fabian society
</EaColumn>
<EaColumn name="BIO_7" type="xs:string">
<b>Interests:</b> Travel, cycling, family life
</EaColumn>
<EaColumn name="party" type="xs:string">Labour</EaColumn>
</EaRow>
</EaData>
Result Limit / Max Rows returned: N/A
EaAOContactDataByPostcode
Description: Returns data held about a particular contact, identified by postcode, in an Engaging Networks provided contact database.
Parameters:
Name | Data Type | Required | Values | Description |
constituencyDatabaseId | integer | true | The numerical identifier of the contact database you would like to look connect with. | |
postcode | string | true* | Valid postcode for a particular constituency |
* If a blank value is passed for postcode, all contacts in the database will be returned.
Sample output:
<EaData>
<EaRow>
<EaColumn name="contactId" type="xs:int">372</EaColumn>
<EaColumn name="title" type="xs:string">Ms</EaColumn>
<EaColumn name="firstName" type="xs:string">Emily</EaColumn>
<EaColumn name="lastName" type="xs:string">Thornberry</EaColumn>
<EaColumn name="suffix" type="xs:string">MP</EaColumn>
<EaColumn name="organization" type="xs:string">Islington South and Finsbury</EaColumn>
<EaColumn name="positionHeld" type="xs:string"></EaColumn>
<EaColumn name="telephone" type="xs:string"></EaColumn>
<EaColumn name="BIO_1" type="xs:string"></EaColumn>
<EaColumn name="BIO_2" type="xs:string">
<b>Date of Birth:</b> 27/07/1960
</EaColumn>
<EaColumn name="BIO_3" type="xs:string">
<b>Education:</b> University of Kent
</EaColumn>
<EaColumn name="BIO_4" type="xs:string">
<b>Occupation:</b> Barrister
</EaColumn>
<EaColumn name="BIO_5" type="xs:string">
<b>Political Experience:</b> Elected as Member of Parliament for Islington South & Finsbury in 2005
</EaColumn>
<EaColumn name="BIO_6" type="xs:string">
<b>Memberships:</b> Fabian society
</EaColumn>
<EaColumn name="BIO_7" type="xs:string">
<b>Interests:</b> Travel, cycling, family life
</EaColumn>
<EaColumn name="party" type="xs:string">Labour</EaColumn>
</EaRow>
</EaData>
Result Limit / Max Rows returned: N/A
EaSupporterCount
Description: Return a count of supporter/constituent records in the constituent record database associated with the public token.
Parameters:None required
Sample call: https://ca.engagingnetworks.app/ea-dataservice/data.service?service=EaSupporterCount&token=your-token-here
Sample Output:
<EaData>
<EaRow>
<EaColumn name="clientId" type="xs:int">94</EaColumn>
<EaColumn name="supporterCount" type="xs:int">22103</EaColumn>
</EaRow>
</EaData>
Result Limit / Max Rows returned: N/A
EaCampaignInfo
Description: Provides basic information about a campaign identified by campaignId.
Parameters:
Name | Data Type | Required | Values | Description |
campaignId | integer | true | The numerical identifier of the campaign. If no id is provided, all campaigns currently in the account will be returned. Includes campaigns with status of deleted and blocked. |
Sample output:
<EaData>
<EaRow>
<EaColumn name="clientId" type="xs:int">94</EaColumn>
<EaColumn name="campaignId" type="xs:int">1996</EaColumn>
<EaColumn name="campaignStatus" type="xs:string">New</EaColumn>
<EaColumn name="campaignName" type="xs:string">Survey 2017-07 - Long Version</EaColumn>
<EaColumn name="campaignExportName" type="xs:string">Survey 2017-07 - Long Version</EaColumn>
<EaColumn name="description" type="xs:string"></EaColumn>
</EaRow>
</EaData>
Result Limit / Max Rows returned: N/A
EaBroadcastInfo
Description: Displays summary information about broadcast(s) in the account.
Parameters:
Name | Data Type | Required | Values | Description |
broadcastId | integer | false | If no broadcastId has been specified, returns a list of broadcasts. | |
startRow | integer | false | ||
endRow | integer | false |
Sample output:
<EaData>
<EaRow>
<EaColumn name="clientId" type="xs:int">94</EaColumn>
<EaColumn name="broadcastId" type="xs:int">4177</EaColumn>
<EaColumn name="broadcastName" type="xs:string">2018 January Newsletter - ALL SUBSCRIBERS</EaColumn>
<EaColumn name="exportName" type="xs:string">2018 January Newsletter - ALL SUBSCRIBERS</EaColumn>
<EaColumn name="broadcastDate" type="xs:date">09/01/2018</EaColumn>
<EaColumn name="sendCount" type="xs:int">32441</EaColumn>
<EaColumn name="openCount" type="xs:int">21049</EaColumn>
<EaColumn name="clickCount" type="xs:int">16024</EaColumn>
<EaColumn name="compCount" type="xs:int">0</EaColumn>
<EaColumn name="hardBounceCount" type="xs:int">0</EaColumn>
<EaColumn name="softbounceCount" type="xs:int">0</EaColumn>
<EaColumn name="unsubscribeCount" type="xs:int">0</EaColumn>
<EaColumn name="feedbackCount" type="xs:int">0</EaColumn>
</EaRow>
</EaData>
Result Limit / Max Rows returned: 21
EaReferenceData
Description: Retrieves a client uploaded ‘Reference Data’ file which can be used to augment the information available for particular contacts.
Parameters:
Name | Data Type | Required | Values | Description |
referenceDataName | string | true | The dashboard name of the uploaded reference data file. |
Sample output:
<EaData>
<EaRow>
<EaColumn name="referenceId" type="xs:int">32</EaColumn>
<EaColumn name="contactId" type="xs:int">4613</EaColumn>
<EaColumn name="contactName" type="xs:string">Baldry</EaColumn>
<EaColumn name="organization" type="xs:string">Banbury</EaColumn>
<EaColumn name="COLUMN1" type="xs:string">Tony</EaColumn>
<EaColumn name="COLUMN2" type="xs:string">Conservative</EaColumn>
<EaColumn name="COLUMN3" type="xs:string">Data 1</EaColumn>
<EaColumn name="COLUMN4" type="xs:string">Data 2</EaColumn>
<EaColumn name="COLUMN5" type="xs:string">Data 3</EaColumn>
<EaColumn name="COLUMN6" type="xs:string">Data 4</EaColumn>
<EaColumn name="COLUMN7" type="xs:string">Data 5</EaColumn>
<EaColumn name="COLUMN8" type="xs:string">Data 6</EaColumn>
<EaColumn name="COLUMN9" type="xs:string">Data 7</EaColumn>
<EaColumn name="COLUMN10" type="xs:string">Data 8</EaColumn>
</EaRow>
</EaData>
Result Limit / Max Rows returned: N/A
FundraisingSummary
Description: Return per-currency summary information (number of donations and amount) about a fundraising campaign.
Parameters:
Name | Data Type | Required | Values | Description |
campaignId | integer | true | The numerical identifier of the campaign. | |
dataField | string | false | Account Data Structure field to use as filter. | |
dataFieldValue | string | false | Value to filter on for dataField. Note if dataField is set, a value must be provided as dataFieldValue. |
Sample output:
<EaData>
<EaRow>
<EaColumn name="campaignId" type="xs:int">3557</EaColumn>
<EaColumn name="campaignName" type="xs:string">iATS live</EaColumn>
<EaColumn name="currency" type="xs:string">USD</EaColumn>
<EaColumn name="totalNumberOfDonations" type="xs:int">21928</EaColumn>
<EaColumn name="totalAmountDonated" type="xs:decimal">202704275</EaColumn>
</EaRow>
<EaRow>
<EaColumn name="campaignId" type="xs:int">3557</EaColumn>
<EaColumn name="campaignName" type="xs:string">iATS live</EaColumn>
<EaColumn name="currency" type="xs:string">GBP</EaColumn>
<EaColumn name="totalNumberOfDonations" type="xs:int">14</EaColumn>
<EaColumn name="totalAmountDonated" type="xs:decimal">660</EaColumn>
</EaRow>
</EaData>
Result Limit / Max Rows returned: N/A
FundraisingSummaryByPage
Description: Return information about the number of single and recurring donations for a specific date range, together with amounts in the reporting currencies USD, GBP, EUR, CAD, AUD only.
Parameters:
Name | Data Type | Required | Values | Description |
pageid | integer | true | page-builder identifier of the fundraising page. | |
startDate | date | true | YYYY-MM-DD | |
endDate | date | true | YYYY-MM-DD |
Sample output:
<EaData>
<EaRow>
<EaColumn name="ID" type="xs:int">5335</EaColumn>
<EaColumn name="NAME" type="xs:string">WorldPay Donate</EaColumn>
<EaColumn name="TOTAL_NUMBER" type="xs:int">1</EaColumn>
<EaColumn name="TOTAL_AMOUNT_USD" type="xs:decimal">0.00</EaColumn>
<EaColumn name="TOTAL_AMOUNT_GBP" type="xs:decimal">0.00</EaColumn>
<EaColumn name="TOTAL_AMOUNT_EUR" type="xs:decimal">0.00</EaColumn>
<EaColumn name="TOTAL_AMOUNT_CAD" type="xs:decimal">0.00</EaColumn>
<EaColumn name="TOTAL_AMOUNT_AUD" type="xs:decimal">0.00</EaColumn>
<EaColumn name="TOTAL_NUMBER_SINGLE" type="xs:int">1</EaColumn>
<EaColumn name="TOTAL_AMOUNT_SINGLE_USD" type="xs:decimal">0.00</EaColumn>
<EaColumn name="TOTAL_AMOUNT_SINGLE_GBP" type="xs:decimal">0.00</EaColumn>
<EaColumn name="TOTAL_AMOUNT_SINGLE_EUR" type="xs:decimal">0.00</EaColumn>
<EaColumn name="TOTAL_AMOUNT_SINGLE_CAD" type="xs:decimal">0.00</EaColumn>
<EaColumn name="TOTAL_AMOUNT_SINGLE_AUD" type="xs:decimal">0.00</EaColumn>
<EaColumn name="TOTAL_NUMBER_RECURRING" type="xs:int">0</EaColumn>
<EaColumn name="TOTAL_AMOUNT_RECURRING_USD" type="xs:decimal">0.00</EaColumn>
<EaColumn name="TOTAL_AMOUNT_RECURRING_GBP" type="xs:decimal">0.00</EaColumn>
<EaColumn name="TOTAL_AMOUNT_RECURRING_EUR" type="xs:decimal">0.00</EaColumn>
<EaColumn name="TOTAL_AMOUNT_RECURRING_CAD" type="xs:decimal">0.00</EaColumn>
<EaColumn name="TOTAL_AMOUNT_RECURRING_AUD" type="xs:decimal">0.00</EaColumn>
</EaRow>
</EaData>
Result Limit / Max Rows returned: N/A
RollCall
This call may be switched off for UK and EU clients. Please contact the support team if you wish to use this call
Description: Returns a list of the latest supporters to participate in the campaign identified by campaignId.
Parameters:
Name | Data Type | Required | Values | Description |
campaignId | integer | true | The numerical identifier of the campaign. | |
dataSet | integer | true | 1,2 | Returns values for either Country (1) or City (2) of the participating supporter. |
detailRows | integer | false | Limit the number of returned values to X (max 20). |
Sample output:
<EaData>
<EaRow>
<EaColumn name="firstName" type="xs:string">Otto</EaColumn>
<EaColumn name="city" type="xs:string">London</EaColumn>
</EaRow>
</EaData>
Result Limit / Max Rows returned: 20
FundraisingRollCall
This call may be switched off for UK and EU clients. Please contact the support team if you wish to use this call
Description: Returns the latest supporters to donate to a campaign, together with currency and amount.
Parameters:
Name | Data Type | Required | Values | Description |
campaignId | integer | true | The numerical identifier of the campaign. | |
dataSet | integer | true | 1,2 | Returns values for either Country (1) or City (2) of the participating supporter. |
dataField | string | false | Account Data Structure field to use as filter. | |
dataFieldValue | string | false | Value to filter on for dataField. Note if dataField is set, a value must be provided as dataFieldValue. | |
detailRows | integer | false | Limit the number of returned values to X (max 20). |
Sample output:
<EaData>
<EaRow>
<EaColumn name="firstName" type="xs:string">Fernan</EaColumn>
<EaColumn name="city" type="xs:string">Barcelona</EaColumn>
<EaColumn name="currency" type="xs:string">EUR</EaColumn>
<EaColumn name="amount" type="xs:decimal">50</EaColumn>
</EaRow>
</EaData>
Result Limit / Max Rows returned: 20
SupporterData
Description: Returns output detailing which tagged data fields contain data for a supporter identified by email address.
Parameters:
Name | Data Type | Required | Values | Description |
string | true | The email address of the supporter to look up. |
If supporterExists is N, the tagged fields will not be included in the output.
Sample output:
<EaData>
<EaRow>
<EaColumn name="clientId" type="xs:int">94</EaColumn>
<EaColumn name="email" type="xs:string">[email protected]</EaColumn>
<EaColumn name="supporterExists" type="xs:string">Y</EaColumn>
<EaColumn name="Title" type="xs:string">Y</EaColumn>
<EaColumn name="First Name" type="xs:string">Y</EaColumn>
<EaColumn name="Last Name" type="xs:string">Y</EaColumn>
<EaColumn name="Address 1" type="xs:string">Y</EaColumn>
<EaColumn name="Address 2" type="xs:string">Y</EaColumn>
<EaColumn name="Address 3" type="xs:string">N</EaColumn>
<EaColumn name="City" type="xs:string">Y</EaColumn>
<EaColumn name="Region" type="xs:string">Y</EaColumn>
<EaColumn name="Phone Number" type="xs:string">N</EaColumn>
<EaColumn name="Email Address" type="xs:string">Y</EaColumn>
<EaColumn name="Postcode" type="xs:string">Y</EaColumn>
<EaColumn name="Country" type="xs:string">Y</EaColumn>
<EaColumn name="Password" type="xs:string">N</EaColumn>
<EaColumn name="Appeal Code" type="xs:string">N</EaColumn>
</EaRow>
</EaData>
Result Limit / Max Rows returned: N/A
BroadcastMessageAttribute
Description: Return a list of email broadcasts in the account, together with any attributes assigned to them.
Parameters:
Name | Data Type | Required | Values | Description |
detailRows | integer | false | Limit the number or rows returned |
Sample output:
<EaData>
<EaRow>
<EaColumn name="BROADCAST_ID" type="xs:int">4376</EaColumn>
<EaColumn name="NAME" type="xs:string">Year End Sea Otter invitation</EaColumn>
<EaColumn name="SUBJECT" type="xs:string">Email Subscribe - Test</EaColumn>
<EaColumn name="SEND_DATE" type="xs:date">2018-05-14</EaColumn>
<EaColumn name="ATTRIBUTES" type="xs:string">Year End~Sea Otters</EaColumn>
</EaRow>
</EaData>
Result Limit / Max Rows returned: 100
ProfileCount
Description: Returns the number of matching supporters for a particular profile.
Parameters:
Name | Data Type | Required | Values | Description |
profileName | string | The dashboard name of the profile to return data for. |
Sample output:
<EaData>
<EaRow>
<EaColumn name="count" type="xs:int">22045</EaColumn>
</EaRow>
</EaData>
Result Limit / Max Rows returned: N/A
JourneyMessageDetails
Parameters:
Name | Data Type | Required | Values | Description |
workflowCount | integer | false | Limit the number of workflows to return. |
Sample output:
<EaData>
<EaRow>
<EaColumn name="WORKFLOW_ID" type="xs:int">11460</EaColumn>
<EaColumn name="WORKFLOW_NAME" type="xs:string">Double wait test</EaColumn>
<EaColumn name="EMAIL_ID" type="xs:string">1041</EaColumn>
<EaColumn name="EMAIL_NAME" type="xs:string">After waiting for one day</EaColumn>
<EaColumn name="EMAIL_SUBJECT" type="xs:string">After waiting for one day</EaColumn>
</EaRow>
<EaRow>
<EaColumn name="WORKFLOW_ID" type="xs:int">11460</EaColumn>
<EaColumn name="WORKFLOW_NAME" type="xs:string">Double wait test</EaColumn>
<EaColumn name="EMAIL_ID" type="xs:string">1026</EaColumn>
<EaColumn name="EMAIL_NAME" type="xs:string">48 hours later</EaColumn>
<EaColumn name="EMAIL_SUBJECT" type="xs:string">48 hours later</EaColumn>
</EaRow>
</EaData>
Result Limit / Max Rows returned: N/A
EventDetails
Description: Returns event details for upcoming events (start date in the future.)
Parameters:
Name | Data Type | Required | Values | Description |
pageStatus | string | false | New, Live, Closed | Filter on page status |
publicOnly | string | false | Y, N | Filter on public/private events |
sortOrder | string | false | ASC, DESC | |
eventTag | string | false | Filter on events with a specific tag(s) |
Sample output
<EaData>
<EaRow>
<EaColumn name="ID" type="xs:int">3199</EaColumn>
<EaColumn name="CAMPAIGN_ID" type="xs:int">6649</EaColumn>
<EaColumn name="CAMPAIGN_PAGE_ID" type="xs:int">11188</EaColumn>
<EaColumn name="PAGE_NAME" type="xs:string">txn event</EaColumn>
<EaColumn name="PAGE_TITLE" type="xs:string">Event</EaColumn>
<EaColumn name="EVENT_ORGANIZER" type="xs:string">Engaging Networks</EaColumn>
<EaColumn name="EVENT_DESCRIPTION" type="xs:string">A small event in the office.</EaColumn>
<EaColumn name="EVENT_START_DATE" type="xs:date">2020-03-07</EaColumn>
<EaColumn name="EVENT_START_TIME" type="xs:string">00:00:00</EaColumn>
<EaColumn name="EVENT_END_DATE" type="xs:date">2025-02-13</EaColumn>
<EaColumn name="EVENT_END_TIME" type="xs:string">00:00:00</EaColumn>
<EaColumn name="TIMEZONE" type="xs:string">Europe/London</EaColumn>
<EaColumn name="EVENT_TAGS" type="xs:string"></EaColumn>
<EaColumn name="PUBLIC_EVENT" type="xs:string">N</EaColumn>
<EaColumn name="ONLINE_EVENT" type="xs:string">N</EaColumn>
<EaColumn name="VENUE" type="xs:string">The Office</EaColumn>
<EaColumn name="ADDRESS" type="xs:string">64 Clerkenwell Road</EaColumn>
<EaColumn name="CITY" type="xs:string">London</EaColumn>
<EaColumn name="REGION" type="xs:string"></EaColumn>
<EaColumn name="POSTAL_CODE" type="xs:string">EC1M5PX</EaColumn>
<EaColumn name="COUNTRY" type="xs:string">GB</EaColumn>
</EaRow>
</EaData>
Result Limit / Max Rows returned: N/A
Appendix
campaignId
The campaign ID is a unique number associated with the campaign. It is not the same as the Page ID, found in the URL. To find the campaignID of a page:
- View the page (as preview or live)
- View the source HTML of the page (you can usually right-click and choose View Page Source to do this)
- Scroll to the very bottom of the page
- You should see a comment in a format like this:
CODE
<!-- Test Page:12346:8038:79 -->
- The campaignID is the second number between the colons. The first number is the page ID, and the last number the client ID.
questionId
In order to obtain the correct ID number for a question, it is necessary to use the browser’s Developer Tools ‘Network’ tab. This will allow you to inspect the response from calls that are made to page-builder while editing pages.
To locate the data structure containing the questions, edit a page and open any ‘Form block’ for editing, then select the Questions tab. You should now see a call to:
question?sharedOnly=false&_=<timestamp>
By viewing the Response for this call, you will be able to see the JSON data structure which contains the questionId. The data structure is an array containing both regular questions and so called ‘opt-in’ questions, however each index also contains the question ‘name’, which should help in identifying the correct question.
constituencyDatabaseId lookup
The Engaging Networks contact databases used by Email to Target campaigns within the software are used by certain calls to extract information about particular contacts. The following table allows you to look up the correct ID number of the database to use with the calls:
Description | constituencyDatabaseId |
Australia / English : MP | 15 |
Australia / English : State Parliaments | 142 |
Canada / English : Provincial MLA | 8 |
Canada / English : Toronto City Councillors | 64 |
Canada / English : Federal MP | 7 |
Canada / French : Federal MP | 10 |
Canada / French : Provincial MLA | 11 |
Germany / German : German MEPs | 93 |
UK / English : ICB Chairs | 110 |
UK / English : Councillors – Upper Tier | 170 |
UK / English : County Councillors | 49 |
UK / English : District/Unitary Authority Councillors | 17 |
UK / English : Local Media | 6 |
UK / English : London Borough Councillors | 168 |
UK / English : Mental Health Trusts CEOs | 173 |
UK / English : MEP | 4 |
UK / English : MSP Constituency Only | 68 |
UK / English : MSP Region Only | 67 |
UK / English : MSP/AM/MLA /England MP | 1 |
UK / English : NHS Trusts CEOs | 174 |
UK / English : Police Commissioners | 97 |
UK / English : Westminster MP | 3 |
UK / Special : Council Areas Lookup | 52 |
UK / Special : District Council Ward Lookup | 114 |
UK / Special : UK Region Lookup | 101 |
USA / English : Attorneys General | 177 |
USA / English : Congress – House | 26 |
USA / English : Congress – Senate | 39 |
USA / English : New York Councillors | 69 |
USA / English : State Legislature House | 58 |
USA / English : State Legislature Senate | 60 |
USA / English : US State Governors | 119 |