Data API

Data Methods

These methods provide a read-only mechanism to data held on the Meet & Engage platform pertaining to Events and Participants.

Accessing the API

The public-facing API can be accessed through the following URL:

https://meetandengage.com/api/1.0/rest/[resource]

The above URL is only available via HTTPS.

Authentication

The Data API is secured via Basic Auth with randomly generated complex key pairs. You can generate such keys for your organisation account (without a limit on the number used) from your Control Panel. When logged onto the Control Panel, click on the cog button in the top-right to access your preferences menu. Towards the bottom you will find a list of any existing keys in your account as well as the ability to revoke current key pairs and generate new ones. Click on 'Generate new key pair' to create and store a key pair. Please make a note of this immediately, as we do not store the secret portion in a reversibly encrypted format.

If you suspect that a key has been lost or stolen, please revoke it immediately.

New keys are linked to the Meet & Engage Account, not the current Moderator account. This means that if you have access to multiple Accounts you will need to generate keys for each Account to which you need API Access. In addition, Keys will remain active even if the user who generated them is removed, for the same reason.

Testing access

You can connect to

https://meetandengage.com/api/1.0/rest

and should see the following on successful authentication:

{
    "authenticated": true
}

Rate Limits

Each key is limited to 10 successful calls in each 5 second interval. No daily/monthly overall limits are imposed. All rate limits breaches are logged, and following excessive rate limiting keys may be disabled to safeguard the security of your data. If you have an questions about limits or how to avoid them, please contact our support team

GET organisation_data resource

As part of your Control Panel, the 'Data' page allows you to export CSV-format data from all events falling between chosen dates. By default, we provide access to a predefined and verbose 'advanced raw data' download, which exports the majority of information captured by the system. In some cases it is necessary to carry out some additional computation in order to arrive at a particular piece of MI data based on this, and we provide custom methods designed to do some of that processing before spitting out a more informative download. All data formats are automatically exposed via the organisation_data method as JSON representations of the same data.

This method allows you to hook into the same data download exposed via the 'data' page on the Control Panel programmatically. If you have a bespoke data format as part of your account, you can access it via this mechanism.

Resource URL

https://meetandengage.com/api/1.0/rest/organisation_data

Resource Information

All access requires authentication and communication over HTTPS. The response is always delivered in JSON format.

Request Parameters

Param: Notes: Example
account The name of the Meet & Engage organisation account you are accessing. This is used as an additonal layer of security. Example: companyname
data_method The name of the data method exposed to the API. The built-in method is called 'standard'. Custom methods are named arbitrarily and descriptively so you should request this from your Meet & Engage account manager or the Support Team if attempting to connect to a custom method. Example: standard
from_date The date of from which you wish to extract data, in UTC, in milliseconds since Unix Epoch. e.g. new Date().getTime(); The date will be processed to round down to the nearest day as 12 midnight. 0 is an allowed value (no 'from' date is used to confine results in this case) Example: 1466771079000
to_date The date of to which you wish to extract data, in UTC, in milliseconds since Unix Epoch. e.g. new Date().getTime(); The date will be processed to round up to the nearest day as 12 midnight. Future dates are allowed (no 'to' date is used to confine results in this case) Example: 1466771079000

Example Request

GET

https://meetandengage.com/api/1.0/rest/organisation_data?account=test&data_method=custom_method_basic_info&from_date=0&to_date=1518340113180

Example Result

{
    "output": [
        {
            "Device": "Mobile",
            "EmailAddress": "timworks@example.com",
            "AttendedOnlineLiveChat": "123456789",
            "Registered": false,
            "Country": "GB"
        },
        {
            "Device": "Tablet",
            "EmailAddress": "gmshroll@example.com",
            "AttendedOnlineLiveChat": "123456789",
            "Registered": true,
            "Country": "GB"
        }
    ]
}

All output is contained under the 'output' array of the returned JSON. As you can see, each 'row' is returned as a separate object within this array, with parameters named within each object. There is no set schema for the data, as this is customised depending on the method evoked. The data is kept with the 'output' array so that any meta information, warnings or errors can be passed to you alongside the data.