evenito API documentation (1.0.0)

Download OpenAPI specification:

API usage

By using the API key, API requests can be done by simply having the key in the Authorization header.

Note: To be efficient, many endpoints should be used with the correct query parameters. For inspiration, follow samples of how our application (app.evenito.com) does API calls or request for a more personalized documentation from evenito.

Pagination

All get many endpoints are paginated to return maximum 300 entities in a single call.

Required headers

Authorization: Bearer {token / API key}
evenito-space-id: {spaceId}

Getting started with API keys

Api keys are meant to improve the ease of API access and the maintenance and rotation of API access keys. API tokens do not expire, therefore the rotation can be determined by the users themselves.

Create your first API key

Retrieve a normal user key

The bearer token from your user can be retrieved by taking a look into the network tab when logged in as a space_administrator in the space that you want to create an api key for.

Where to find the temporary bearer token

This token has a very limited lifetime so if it runs out by the time you have prepared the API call to create your API then grab a new one from the browser. As the next step do a POST call to the API keys endpoint with this token in order to add a permanent API key.

Push contacts into evenito, pull updates out

Get all future unarchived events and save them.

For the full list of available filters, see the Search Reference. Request:

curl 'https://api.app.evenito.com/spaces/{space_id}/events?page=1&limit=10&sort=start_timestamp%2CASC&sort=calculated_end_timestamp%2CASC&s={"$and":[{"parent_id":{"$isnull":true}},{"status":{"$ne":"archived"}},{"calculated_end_timestamp":{"$gt":"now()"}}]}' \
  -H 'authorization: Bearer ey...' \
  -H 'evenito-space-id: {space_id}' \

Note that without {"parent_id":{"$isnull":true}} also schedules from within events are returned.

Response:

{
    "error": false,
    "data": [
        {events listed here},
        ],
    "count": 4,
    "total": 4,
    "page": 1,
    "pageCount": 1
}

Bulk uploading contacts into events

Request:

curl 'https://api.app.evenito.com/events/{eventId}/contacts/bulk' \
  -H 'accept: application/json, text/plain, */*' \
  -H 'accept-version: 2' \
  -H 'authorization: Bearer ey...' \
  -H 'content-type: application/json' \
  -H 'evenito-space-id: {space_id}' \
  --data-raw '{"bulk":
                [
                    {"language":"de","data":{"firstName":"test1","lastName":"test1","email":"test1@test.com"}},
                    {"language":"en","data":{"firstName":"test2","lastName":"test2","email":"test2@test.com"}}
                ]
            }'

The response will include all uploaded contacts.\

Getting emails that are in the block-list

Request:

curl 'https://api.app.evenito.com/emails/unsubscribe?page=1&limit=20' \
  -H 'authorization: Bearer ey...' \
  -H 'evenito-space-id: {space_id}'

Response:

{
    "error": false,
    "data": [
        {emails listed here}
    ],
    "count": 4,
    "total": 4,
    "page": 1,
    "pageCount": 1
}

API Keys

Get API Keys

Check in on already existing API keys

header Parameters
content-type
required
string
Example: application/json
evenito-space-id
required
string
Example: 74a95ce2-4ef1-4794-a606-9973828dd860

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Create API Keys

Save the key from the response in a secure place, as this is the first and the last time that the key itself is shown.

header Parameters
content-type
required
string
Example: application/json
evenito-space-id
required
string
Example: 74a95ce2-4ef1-4794-a606-9973828dd860
Request Body schema: application/json
name
string

Responses

Request samples

Content type
application/json
{
  • "name": "master_key"
}

Response samples

Content type
application/json
{
  • "id": "2f7933fc-3462-4834-ae7f-218989a65912",
  • "name": "master_key",
  • "key": "eak-..."
}

Contacts

Contacts

query Parameters
page
string
Default: "1"
Example: page=1

page

limit
string
Default: "10"
Example: limit=10

limit

sort
string
Default: "id,ASC"
Example: sort=id,ASC

sort

s
string
Default: "{\"$or\":[{\"status\":\"registered\"}]}"
Example: s={"$or":[{"status":"registered"}]}

s

header Parameters
accept-version
string
Default: 2
Example: 2

accept-version

evenito-space-id
string
Example: 74a95ce2-4ef1-4794-a606-9973828dd860

evenito-space-id

priority
string
Default: u=1, i
Example: u=1, i

priority

Responses

Response samples

Content type
application/json
{
  • "count": 10,
  • "data": [
    ],
  • "error": false,
  • "page": 1,
  • "pageCount": 20,
  • "total": 200
}

Groups

query Parameters
page
string
Default: "1"
Example: page=1

page

limit
string
Default: "300"
Example: limit=300

limit

header Parameters
evenito-space-id
string
Example: 74a95ce2-4ef1-4794-a606-9973828dd860

evenito-space-id

priority
string
Default: u=1, i
Example: u=1, i

priority

Responses

Response samples

Content type
application/json
{
  • "count": 5,
  • "data": [
    ],
  • "error": false,
  • "page": 1,
  • "pageCount": 1,
  • "total": 5
}

Events

Events

query Parameters
page
string
Default: "1"
Example: page=1

page

limit
string
Default: "10"
Example: limit=10

limit

s
string
Default: "{\"$and\":[{\"status\":{\"$ne\":\"archived\"}},{\"calculated_end_timestamp\":{\"$gt\":\"now()\"}},{\"parent_id\":{\"$isnull\":true}}]}"
Example: s={"$and":[{"status":{"$ne":"archived"}},{"calculated_end_timestamp":{"$gt":"now()"}},{"parent_id":{"$isnull":true}}]}

s

sort
string
Default: "start_timestamp,ASC"
Example: sort=start_timestamp,ASC

sort

header Parameters
evenito-space-id
string
Example: 74a95ce2-4ef1-4794-a606-9973828dd860

evenito-space-id

priority
string
Default: u=1, i
Example: u=1, i

priority

Responses

Response samples

Content type
application/json
{
  • "count": 0,
  • "data": [ ],
  • "error": false,
  • "page": 1,
  • "pageCount": 1,
  • "total": 0
}

Event Stats

header Parameters
evenito-space-id
string
Example: 74a95ce2-4ef1-4794-a606-9973828dd860

evenito-space-id

priority
string
Default: u=1, i
Example: u=1, i

priority

Responses

Response samples

Content type
application/json
{
  • "error": false,
  • "grouped_by_group_registered": null,
  • "grouped_by_group_showed_up": null,
  • "grouped_by_status": [
    ],
  • "total_checked_in": "0",
  • "total_contacts": "200"
}