NAV Navigation
Shell JSON

EDDI Event APIs

Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.

The EDDI - Events is a direct access, automated and real-time price fetching service. This EDDI API Explorer details all the available communication methods and provides users with a platform to directly test these methods.

Users can evaluate all the methods described in this document within this Swagger Explorer, passing the appropriate parameters to fetch price as it is displayed in the given source, in real-time.

The Methods listed in this document are organized under the following Groups Methods:

Parameter Definition
Authentication Gaining access to the EDDI API.
Account Viewing basic information about your query (henceforth referred to as "call") settings
Entity Information Search and retrieve information on the events you wish to track
EDDI Shops Create templates that help the user to define call parameters used to filter the dataset related to events, their impact, or the hotel's demand. Once defined, it can be called as and when required or even be linked to a Schedule.
Demand Identify a property's demand or an event impact using a granular call or an EDDI Shop.
Schedules Set up a routine to run an EDDI Shop.
Hooks Defines the endpoint for the delivery of events or impact or demands retrieved by the EDDI API
References Retrieves reference values used in EDDI API

Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.

Communication Methods

This is the Swagger Explorer for the EDDI DataStream. This provides seamless access to the DataStream product and enables you to integrate easily with your application.

This API Explorer lists the available communication methods and provides a way to directly test these methods. The user can go through every stage, starting with the authentication, through fetching the responses and all the intermediate stages, passing actual parameters, and fetching a response identical to the live environment.

Authorization

Every request sent to the EDDI API must be authenticated with an access token. You can obtain an access token when you log in using the credentials provided in your EDDI API packet. An access token is valid for twenty-four (24) hours from the time it is generated

Authorizing Requests on this Page

The Access Token will be automatically appended to the Authorization Value when requests are made within the Swagger Explorer. The key appears in the value textbox in the Authorize button at the top right corner of the methods panel Start. If for any reason this does not happen automatically, just copy the access token obtained using the authtoken method and paste it in this text box.

Base URL:

https://eddi.aggregateintelligence.com/apidocs/#/

Request and Response Parameters

Common Request Header / Body / Query Parameters

The Request Header parameters is applicable to all other field attributes and features.

Name Requirement (True or False) Data Type Description
Authorization Required String The JWT Token in format "Bearer xxxx.yyyy.zzzz"

The Request Body / Query parameters is applicable to all other field attributes and features for the purpose of pagination.

Name In Requirement (True or False) Data Type Description
page query Optional/False Integer / Number Enter the page number with default value as 1
size query Optional/False Number/ integer Enter the size of data with the default value as 10

Authentication

This call authenticates the validity of a username/password combination. If the authentication is successful, a valid access token is issued. Use the username and password provided to you in your EDDI API packet.

Auth & User Management

POST /authtoken/ Gaining access to the EDDI API

Example: username=&password=

Where the username is the user’s name and the password is the user’s password.

Auth is handled using the usual JWT bearer tokens with a configurable default expiry (usually 24 hours).

Authtoken Request Body Parameters

Parameter Name Value in Data Type Requirement (True or False) Description
Username formdata string required The user’s name
Password formdata $password required The user’s password

Authtoken Parameter Response Codes

Success Response code is 200

Status Meaning Description Schema
200 OK Success UserResp
400 Bad Request Server unable to process the request - Invalid Information – by the client None
401 Error: Unauthorized Invalid Credential Access – Authentication Denied None
500 Internal Error - None

Account

GET /credits

Viewing basic information about your call settings

This method retrieves the account limitations. Limitations are based on commercial terms of your account as defined when the account was created. Limitations are subject to modification upon variation of commercial terms. Account limitations include the following:

validtill --> account expiration date.

calls --> maximum calls allowed per account on a daily, weekly and monthly basis

pullsperday --> maximum daily pull requests allowed

horizonmax --> maximum time horizon allowed for the demand predictions

events --> returns two-key dictionary, max number of shops, that can be active at a time (maxeddishops) and shops already in use (usededdishops)

schedules --> returns the two-key dictionary, maximum number of schedules, that can be active at a time (maxschedules) and schedules already in place (usedschedules)

These methods retrieve the call limitations set for your account. These limitations are based on the commercial terms of your account and are set at the time, the account was first created and changed to reflect any change to these commercial terms.

The “pullsperday”, “rateshops”, horizonmax” and “schedules” indicate the maximum permissible limit available for your account for these features.
No Parameters are passed.

Common Response Status Codes

Status Meaning Description Schema
200 OK Success UserResp
400 Bad Request Server unable to process the request - Invalid Information – by the client None
401 Error: Unauthorized Invalid Credential Access – Authentication Denied None
500 Internal Error - None

Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.

Entity Information

POST/events/

This method is used to fetch the eventid or an event’s base details.

This API call returns the basic details of all the events available in the EDDI database. In case the event you search for is not displayed in our database, please send a request to eddi@aggregateintelligence.in We will try to make it available within the next 24 hours.

Search Criteria --> Any parameter (single or in any combination). For more information about "Category", refer Category method under the header "Reference".

Example 1 --> { "eventid": 0, "eventname": "Chicago - The Musical", "category": "string", "country": "United States", "city": "string", "state": "string", "zip": "string" }

Example 2 --> { "eventid": 0, "eventname": "string", "category": "Entertainment events", "country": "United States", "city": "string", "state": "string", "zip": "string" }

eventid --> This is a Unique ID assigned to an event in the EDDI database. If the user knows the eventid, they can fetch the basic event details by the calls made on this method.

The Request Body / Query parameters is applicable to all other field attributes and features

Name In Requirement (True or False) Data Type Description
Data Object Body Required - Edit Value

POST Events Request Parameters

POST Events Request Sample (JSON Code Format Snippet)

{
     "eventid ": 0,
     "eventname" : "string",
     "category" : "string",
     "country" : "string",
     "city" : "string",
     "state" : "string",
    "zip": "string",
         ]
  }
    
S. No Parameter Name Data Type
1 eventid integer
2 eventname string
3 category string
4 country string
5 city string
6 state string

POST Events Request Response Codes

Success Response code is 200

Status Meaning Description Schema
200 OK Success UserResp
400 Bad Request Server unable to process the request - Invalid Information – by the client None
401 Error: Unauthorized Invalid Credential Access – Authentication Denied None
500 Internal Error - None

POST/eventsinfo

This method is to fetch an event’s complete information.

This eventsinfo API call returns the complete details of all events available in the EDDI database. In case the event you search for is not displayed in our database, please send a request to eddi@aggregateintelligence.in. We will try to make it available within the next 24 hours.

Search Criteria --> Any parameter (single or in any combination). If latitude and longitude are chosen, then Proximity must be chosen as well. For more information about "Category", refer Category method under the header "Reference"

Date Format -->"range", Format

  1. Range value - 100-500
  2. Min value - < 500
  3. Max value - >500
  4. Exact - 500

proximity "string" format - Should be numeric and in miles Example1: "proximity": "2"

EventstatusCode Should be an integer value as follows [0,1,2,3,4,5]

  1. All Events - 0
  2. Scheduled - 1
  3. Rescheduled - 2
  4. Postponed - 3
  5. HolidayEvents - 4
  6. Cancelled - 5

Example1 --> { "eventid": 0, "eventname": "Chicago - The Musical", "category": "string", "startdate": "YYYY-MM-DD", "estimatedattendee": ">0", "venue": "string", "address": "string", "city": "string", "state": "string", "zip": "string", "country": "United States", "region": "string", "lat": "string", "lng": "string", "proximity": 0, "eventstatusCode":0 }

Example2 --> { "eventid": 0, "eventname": "string", "category": "string", "startdate": "YYYY-MM-DD", "estimatedattendee": ">0", "venue": "string", "address": "string", "city": "New York", "state": "string", "zip": "string", "country": "United States", "region": "string", "lat": "string", "lng": "string", "proximity": 0, "eventstatusCode":0 }

Example3 --> { "eventid": 0, "eventname": "string", "category": "string", "startdate": "YYYY-MM-DD", "estimatedattendee": ">0", "venue": "string", "address": "string", "city": "string", "state": "string", "zip": "string", "country": "string", "region": "string", "lat": "39.7421", "lng": "-104.99", "proximity": 5, "eventstatusCode":0 }

eventid Unique ID assigned to an event in EDDI database. If the user knows the eventid, they can fetch the complete event details by calls made on this method.

POST /eventsinfo Request Parameters

POST /eventsinfo Request Parameters Sample Format of JSON Code Snippet

{
   "eventid ": 0,
   "eventname" : "string",
   "category" : "string",
   "country" : "string",
   "city" : "string",
   "state" : "string",
  "zip": "string",
  "country": "string",
  "region": "string",
  "lat": "string",
  "lng": "string",
  "proximity": 0,
  "eventstatusCode": 1,
       ]
}
  

This method accepts the request id obtained in the response to the initial request. The response is identical to the initial response, but with the updated status at that point of time.

Responses

Query Parameter Data Type
eventid integer
eventname string
category string
startdate date example: YYYY-MM-DD
estimatedattendee string
venue string
address string
city string
state string
zip string
country string
region string
lat string
lng string
proximity string
eventstatusCode string

The Common Response status codes are 200, 400, 401, 500.

POST/hotelinfo

Search and retrieve information on the hotels you wish to track

This API call returns the basic details of hotels available in our AI hotel database. In case the hotel you search for is not displayed in our database, please send a request to eddi@aggregateintelligence.in. We will try to make it available within the next 24 hours.

Search Criteria: Any parameter (single or in any combination). If lat and long are chosen, then Proximity has to be chosen as well.

"proximity": "string" format - Should be numeric and in miles Example1: "proximity": "2"

hotelcode Unique ID assigned to a hotel located in AI hotel database. If the user knows the hotel code, they can fetch the basic hotel details by calls made on this method.

Example1 --> { "hotelcode": 0, "hotelcodes": [], "hotelname": "Hyatt", "address": "string", "city": "string", "state": "string", "zip": "string", "country": "United States", "lat": "string", "lng": "string", "rating": "string", "proximity": 0 }

Example2 --> { "hotelcode": 0, "hotelcodes": [4475,4476], "hotelname": "string", "address": "string", "city": "New York", "state": "string", "zip": "string", "country": "United States", "lat": "string", "lng": "string", "rating": "string", "proximity": 0 }

Example3 --> { "hotelcode": 0, "hotelcodes": [], "hotelname": "string", "address": "string", "city": "string", "state": "string", "zip": "string", "country": "string", "lat": "41.8913913", "lng": "-87.6054344", "rating": "string", "proximity": 5 }

POST /hotelinfo Request Parameters

POST /hotelinfo Request Parameters Sample Format JSON Code Snippet

{
       "hotelcode ": 0,
       "hotelcodes" : [],
       "hotelname" : "string",
       "address" : "string",
       "city" : "string",
       "state" : "string",
      "zip": "string",
      "country": "string",
      "lat": "string",
      "lng": "string",
      "rating": "string",
      "proximity": 1,
           ]
    }
      
Parameter Data Type
hotelcode integer
hotelcodes example: List []
hotelname string
address string
city string
state string
zip string
country string
lat string
lng string
rating string
proximity string

EDDI Shop

Rateshop Request Parameters Sample (JSON Code)

{
"rateshopname" : "string", "occupancy" : 10, "currency": 3 , "state": "string" , "currencies" : [ "string" , ] "fetchtype" : 0 , "horizon" : 365 , "hotelcodes" : [ 0 , ] "compsets" : [ { "hotelcode" : 0 , "competitorhotelcodes" : [ 0 , ] } ], "sources" : [ 0 , ], "horizonexpression" : "string", "horizonrange" : "string", "pos" : 10, }

POST /CreateEventImpactShop

Users can create the EventImpactShop.

This API call creates templates that help the user to call all mandatory parameters (impactshopname, horizon, fetchtype, and startdate along with either of the permuted parameters listed below) that are used to filter the event impact dataset. Once defined, it can be called as and when required or even be linked to a Schedule.

Search criteria - Permuted parameters:

  1. eventids, impactshopname, horizon, fetchtype, and startdate
  2. estimatedattendee, impactshopname, horizon, fetchtype, and startdate
  3. city, impactshopname, horizon, fetchtype, and startdate
  4. country, impactshopname, horizon, fetchtype, and startdate
  5. city and country, impactshopname, horizon, fetchtype, and startdate
  6. city and estimatedattendee, impactshopname, horizon, fetchtype, and startdate
  7. country and estimatedattendee, impactshopname, horizon, fetchtype, and startdate

impactshopname --> Your custom name for the eventinfoshop

horizon --> How many consecutive days from the call date to retrieve data for (days out). The maximum value for the horizon is 365 date format: "2021-10-02"

fetchtype --> The location/server space where the user would want their results to be stored ["s3","endpoint"]. example:{"fetchtype":1}

  1. 1 - s3
  2. endpoint
  3. Email containing the path will be sent to the user once data is executed.

Endpoint --> User to specify a location of their preference.

estimatedattendee --> "range", Format

  1. Range value - 100-500
  2. Min value - <500
  3. Max value - > 500
  4. Exact - 500

status

  1. 1 - Active
  2. 0 - In Active

Example 1 --> { "impactshopname": "NYEvents_2022", "estimatedattendee": "string", "city": "New York", "country": "United States", "fetchtype": 1, "startdate": "2022-04-01", "horizon": 90, "eventids": [], "status":1 }

Example 2 --> { "impactshopname": "NYEvents_2022_1000", "estimatedattendee": ">1000", "city": "New York", "country": "United States", "fetchtype": 1, "startdate": "2022-04-01", "horizon": 90, "eventids": [], "status":1 }

Users can create the EventImpactShop.

This EventImpactShop API call creates templates that help the user to call all mandatory parameters (impactshopname, horizon, fetchtype, and startdate along with either of the permuted parameters listed below) that are used to filter the event impact dataset. Once defined, it can be called as and when required or even be linked to a Schedule.

Search criteria - Permuted parameters:

  1. eventids, impactshopname, horizon, fetchtype, and startdate
  2. estimatedattendee, impactshopname, horizon, fetchtype, and startdate
  3. city, impactshopname, horizon, fetchtype, and startdate
  4. country, impactshopname, horizon, fetchtype, and startdate
  5. city and country, impactshopname, horizon, fetchtype, and startdate
  6. city and estimatedattendee, impactshopname, horizon, fetchtype, and startdate
  7. country and estimatedattendee, impactshopname, horizon, fetchtype, and startdate

impactshopname --> Your custom name for the eventinfoshop

horizon --> How many consecutive days from the call date to retrieve data for (days out). The maximum value for the horizon is 365 date format: "2021-10-02"

fetchtype --> The location/server space where the user would want their results to be stored ["s3","endpoint"]. eg:{"fetchtype":1}

  1. s3
  2. endpoint

s3: Email containing the path will be sent to the user once data is executed. Endpoint: User to specify a location of their preference.

estimatedattendee -->"range", Format

  1. Range value - 100-500
  2. Min value - < 500
  3. Max value - >500
  4. Exact - 500

status -->

  1. 1 - Active
  2. 0 - In Active

Example 1 --> { "impactshopname": "NYEvents_2022", "estimatedattendee": "string", "city": "New York", "country": "United States", "fetchtype": 1, "startdate": "2022-04-01", "horizon": 90, "eventids": [], "status":1 }

Example 2 --> { "impactshopname": "NYEvents_2022_1000", "estimatedattendee": ">1000", "city": "New York", "country": "United States", "fetchtype": 1, "startdate": "2022-04-01", "horizon": 90, "eventids": [], "status":1

POST Create Event Impact Shop Request Parameters

POST Create Event Impact Shop Sample Response JSON Format Code Snippet

{
"impactshopname" : "string", "estimatedattendee" : "string", "city": "string", "country": "string" , "fetchtype" : 0 , "startdate" : "2023-04-17" , "horizon" : 0 , "eventids" : [] , "status" : 1 }
Query Parameter Data Type
impactshopname string
estimatedattendee string
city string
country string
fetchtype integer
startdate string($date) pattern: YYYY-MM-DD
horizon integer
eventids example: List []
status integer example: 1

The Common Response status codes are 200, 400, 401, 500.

POST /CreateEventInfoShop

Users can create the Eventinfoshop

This createeventinfoshop API call creates templates that helps the user to call all mandatory parameters (eventshopname, horizon, fetchtype, and startdate along with either of the permuted parameters listed below) that are used to filter the event dataset. Once defined, it can be called as and when required or can even be linked to a Schedule

Search criteria - Permuted parameters:

  1. eventids, eventshopname, horizon, fetchtype, and startdate
  2. estimatedattendee, eventshopname, horizon, fetchtype, and startdate
  3. city, eventshopname, horizon, fetchtype, and startdate
  4. country, eventshopname, horizon, fetchtype, and startdate
  5. city and country, eventshopname, horizon, fetchtype, and startdate
  6. city and estimatedattendee, eventshopname, horizon, fetchtype, and startdate
  7. country and estimatedattendee, eventshopname, horizon, fetchtype, and startdate

eventshopname --> Your custom name for the eventinfoshop

horizon --> How many consecutive days from the call date to retrieve data for (days out). The maximum value for the horizon is 365 date format: "2021-10-02"

fetchtype --> The location/server space where the user would want their results to be stored ["s3","endpoint"]. eg:{"fetchtype":1}

  1. 1 - s3
  2. 2 - endpoint

s3 --> Email containing the path will be sent to the user once the data is executed

Endpoint --> User to specify a location of their preference

estimatedattendee --> "range", Format

  1. Range value - 100-500
  2. Min value - < 500t
  3. Max value - > 500
  4. Exact - 500

status -->

  1. 1 - Active
  2. 0 - In Active

Example 1 --> { "eventshopname": "NYEvents_2022", "estimatedattendee": "string", "city": "New York", "country": "United States", "fetchtype": 1, "startdate": "2022-04-01", "horizon": 90, "eventids": [], "status": 1 }

Example 2 --> { "eventshopname": "NYEvents_2022", "estimatedattendee": ">1000", "city": "New York", "country": "United States", "fetchtype": 2, "startdate": "2022-04-01", "horizon": 90, "eventids": [], "status": 1 }

POST Create Event Info Shop Request Parameters

POST Create Event Info Shop Sample Response JSON Format Code Snippet

{
"eventshopname" : "string", "estimatedattendee" : "string", "city": "string", "country": "string" , "fetchtype" : 0 , "startdate" : "2023-04-18" , "horizon" : 0 , "eventids" : [] , "status" : 1 }
Query Parameter Data Type
eventshopname string
estimatedattendee string
city string
country string
fetchtype integer
startdate string($date) pattern: YYYY-MM-DD
horizon integer
eventids example: List []
status integer example: 1

The Common Response status codes are 200, 400, 401, 500.

POST /Create Hotel Demand Shop

Users can create the HotelDemandShop

This create hotel demand shop API call creates templates that help the user to call all mandatory parameters (hoteldemandshopname, horizon, fetchtype and startdate along with either of the permuted parameters listed below) that are used to filter the hotel demand dataset. Once defined, it can be called as and when required or even be linked to a Schedule.

Search criteria - Permuted parameters

  1. hotelcodes, demandshopname, horizon, fetchtype, proximity, and startdate
  2. city, demandshopname, horizon, fetchtype, proximity and startdate
  3. country, demandshopname, horizon, fetchtype, proximity, and startdate
  4. city and country, demandshopname, horizon, fetchtype, proximity, and startdate

demandshopname --> Your custom name for the hoteldemandshop

horizon --> How many consecutive days from the call date to retrieve data for (days out). The maximum value for the horizon is 365 date format: "2021-10-02"

fetchtype --> The location/server space where the user would want their results to be stored ["s3","endpoint"]. eg:{"fetchtype":1}

  1. 1 - s3
  2. 2 – endpoint

s3 --> Email containing the path will be sent to the user once data is executed. Endpoint: User to specify a location of their preference.

proximity --> string" format - Should be numeric and in miles Example1: "proximity": "2"

status -->

  1. 1 - Active
  2. 0 - In Active

Example 1 --> { "demandshopname": "NYHotel_Demand2022", "hotelcodes": [], "city": "New York", "country": "United States", "fetchtype": 1, "startdate": "2022-04-01", "horizon": 365, "proximity": 2, "status":1 }

Example 2 --> { "demandshopname": "NYHotel_Demand2022", "hotelcodes": ["43308","50225","26128","14300","66351","147132"], "city": "string", "country": "string", "fetchtype": 2, "startdate": "2022-04-01", "horizon": 90, "proximity": 10, "status":1 }

POST Create Hotel Demand Shop Request Parameters

POST Create Event Info Shop Sample Response JSON Format Code Snippet

{
"eventshopname" : "string", "estimatedattendee" : "string", "city": "string", "country": "string" , "fetchtype" : 0 , "startdate" : "2023-04-18" , "horizon" : 0 , "eventids" : [] , "status" : 1 }
Query Parameter Data Type
eventshopname string
estimatedattendee string
city string
country string
fetchtype integer
startdate string($date) pattern: YYYY-MM-DD
horizon integer
eventids example: List []
status integer example: 1

The Common Response status codes are 200, 400, 401, 500.

GET /GetEvent Impact Shop

Users can view the EventImpactShop

Query Parameter Name Description
ImpactShopId Impact Shop Id

The Common Response status codes are 200, 400, 401, 500.

GET /Get Event Info Shop

Users can view the EventInfoShop

Query Parameter Name Description
EventShopId Event Shop Id

The Common Response status codes are 200, 400, 401, 500.

GET /Get Hotel Demand shop

Users can view the HotelDemandShop

Query Parameter Name Description
DemandShopId Demand Shop Id

The Common Response status codes are 200, 400, 401, 500.

PUT /Edit Event Impact Shop

User can edit the EventImpactShop.

This EditEventImpactshop API call allows the user to modify the details of an existing impactshopname linked to a impactshopid.

PUT Edit Event Impact Shop Request Parameters

PUT Edit Event Impact Shop Request Response Sample JSON Code Snippet

{
"impactshopname" : "string", "estimatedattendee" : "string", "city": "string", "country": "string" , "fetchtype" : 0 , "startdate" : "2023-04-18" , "horizon" : 0 , "eventids" : [] , "impactshopid" : 0 , "status" : 1 }
Query Parameter Data Type
impactshopname string
estimatedattendee string
city string
country string
fetchtype integer
startdate string($date) pattern: YYYY-MM-DD
horizon integer
eventids example: List []
impactshopid integer default: 0 example: 0
status integer example: 1

The Common Response status codes are 200, 400, 401, 500.

PUT /EditEventInfoShop

User can edit the EventInfoShop.

This EventInfoShop API call allows the user to modify the details of an existing event shop name linked to an event shop id.

PUT Edit Event Info Shop Request Parameters

PUT Edit Event Info Shop Request Response Sample JSON Code Snippet

{
"eventshopname" : "string", "estimatedattendee" : "string", "city": "string", "country": "string" , "fetchtype" : 0 , "startdate" : "2023-04-18" , "horizon" : 0 , "eventids" : [] , "eventshopid" : 0 , "status" : 1 }
Query Parameter Data Type
eventshopname string
estimatedattendee string
city string
country string
fetchtype integer
startdate string($date) pattern: YYYY-MM-DD
horizon integer
eventids example: List []
eventshopid integer default: 0 example: 0
status integer example: 1

The Common Response status codes are 200, 400, 401, 500

PUT /Edit Hotel Demand Shop

User can edit the HotelDemandShop

This API call allows the user to modify the details of an existing demand shop name linked to a demand shop id.

PUT Edit Hotel Demand Shop Request Parameters

PUT Edit Hotel Demand Shop Request Response Sample JSON Code Snippet

{
"demandshopname" : "string", "hotelcodes" : [] , "city": "string", "country": "string" , "fetchtype" : 0 , "startdate" : "2023-04-18" , "horizon" : 0 , "proximity" : 0 , "demandshopid" : 0, "status" : 1 }
Query Parameter Data Type
demandshopname string
hotelcodes example: List []
city string
country string
fetchtype integer
startdate string($date) pattern: YYYY-MM-DD
horizon integer
proximity integer default: 0 example: 0
demandshopid integer
status integer example: 1

The Common Response status codes are 200, 400, 401, 500.

DELETE /Delete EventInfo Shop

{
"EventShopId" : [] }

User can delete EventInfoShop

This API call allows the user to delete EventShop linked to a event shop id from your account.

Query Parameter Data Type
EventShopId Event Shop Id example: List []

The Common Response status codes are 200, 400, 401, 500.

DELETE /Delete Hotel Demand Shop

{
"DemandShopId" : [] }

User can delete HotelDemandShop

This API call allows the user to delete DemandShop linked to a demand shop id from your account.

Query Parameter Data Type
DemandShopId Demand Shop Id example: List []

The Common Response status codes are 200, 400, 401, 500

DELETE /Delete Impact Shop

{
"ImpactShopId" : [] }

User can delete EventImpactShop

This API call allows the user to delete Impact Shop linked to an impact shop id from your account.

Query Parameter Data Type
ImpactShopId Impact Shop Id example: List []

The Common Response status codes are 200, 400, 401, 500.

Demand

POST/ Event Impact/

This method is to fetch the event information with an impact score.

This API call returns the complete details of all events and its impact available in the EDDI database.

Event Impact --> This method fetches the impact for a particular event on any given date on a scale of 0 to 100. This is determined by the multiple parameters of an event that have a corresponding impact within the specific geolocation.

In case the event you search for is not displayed in our database, please send a request to eddi@aggregateintelligence.in We will try to make it available within the next 24 hours.

Search Criteria --> Any parameter (single or in any combination). If latitude and longitude are chosen, then Proximity must be chosen as well. For more information about "Category", refer Category method under the header "Reference" date format: "2021-10-02"

estimatedattendee --> "range", Format

  1. Range value - 100-500
  2. Min value - < 500
  3. Max value - > 500
  4. Exact - 500

proximity --> "string" format  Should be numeric and in miles Example1: "proximity": "2"

eventstatusCode --> Should be an integer value as follows [0,1,2,3,4,5]

  1. All Events - 0
  2. Scheduled - 1
  3. Rescheduled - 2
  4. Postponed - 3
  5. HolidayEvents - 4
  6. Cancelled - 5

Example 1 --> { "eventid": 0, "eventname": "Musical", "category": "string", "startdate": "YYYY-MM-DD", "estimatedattendee": ">0", "venue": "string", "address": "string", "city": "New York", "state": "string", "zip": "string", "country": "United States", "region": "string", "lat": "string", "lng": "string", "proximity": 0, "horizon": 30, "impact_eventtype":"string", "eventstatusCode":0 }

Example 2 --> { "eventid": 0, "eventname": "string", "category": "string", "startdate": "YYYY-MM-DD", "estimatedattendee": ">0", "venue": "string", "address": "string", "city": "New York", "state": "string", "zip": "string", "country": "United States", "region": "string", "lat": "string", "lng": "string", "proximity": 0, "horizon": 30, "impact_eventtype":"string", "eventstatusCode":0 }

POST Event Impact Request Parameters

POST Event Impact Request Response (Sample JSON Code Snippet)

{
  "eventid": 0,
  "eventname": "string",
  "category": "string",
  "startdate": "YYYY-MM-DD",
  "estimatedattendee": "string",
  "venue": "string",
  "address": "string",
  "city": "string",
  "state": "string",
  "zip": "string",
  "country": "string",
  "region": "string",
  "lat": "string",
  "lng": "string",
  "proximity": 0,
  "horizon": "string",
  "impact_eventtype": 30,
  "eventstatusCode": 1,
  }
  
Query Parameter Data Type
eventid integer
eventname string
category string
startdate date example: YYYY-MM-DD
estimatedattendee string
venue string
address string
city string
state string
zip string
country string
region string
lat string
lng string
proximity integer default: 0 example: 0
horizon impact_eventtype
impact_eventtype string
eventstatusCode integer example: 1

The Common Response status codes are 200, 400, 401, 500

POST/ Hotel Demand/

This method fetches the hotel demand information.

This method can take a hotel OR a city as input, returning daily demand for the defined time-horizon.

When a single hotel is provided as input, demand will be calculated for a single hotel.When the city is provided as input, demand will be calculated for all hotels in the city individually. That is, we will get an H x D matrix (being H the number of hotels in the city and D the number of days within time range).

This method generates 3 output files for individual hotel search and 4 for city search that will be directly sent to the registered user emailid. Also, it generates demandID, which will later pass to /GetHotelDemandInfo/ method to get the status of the call request.

Output files consist of the following:

Absolute Demand --> An absolute number of potential guests per day. Number of guests is determined by the number of events and their impact, taking into account geographical distribution of event-holding venues and nearby hotels.

Relative Demand --> Relative value in the range 0-100, being 0 the lowest demand possible for the defined time range and 100 max demand for the same time range.

Events registered --> Number of events taking place each day and used for demand calculation. Number of events is provided as an integer number

Event records (only when city is provided as input): Detailed description of all the events making up the Events registered count. ID, Event name, Venue, Event Category, City, Date, Level of Attendance are provided for each event.

Search criteria --> "hotelcode or city, country"

horizon --> How many consecutive days from the call date to retrieve data for (days out). The maximum value for the horizon and horizon is 365.

Example 1 --> { "hotelcode": 1707, "city": "string", "country": "string", "horizon": 5 }

Example 2 --> { "hotelcode": 0, "city": "florida", "country": "united states", "horizon": 5 }

POST Hotel Demand Request Parameters

POST Hotel Demand Request Response (Sample JSON Code Snippet)

{
  "hotelcode": 0,
  "city": "string",
  "country": "string",
  "horizon": 0,
   }
  
Query Parameter Data Type
hotelcode integer
city string
country string
horizon string

The Common Response status codes are 200, 400, 401, 500.

GET/Get Hotel Demand Info/

User can view the EventInfoShop:

This method takes a DemandID generated by /hoteldemand/ as input and shows the status of the request.

GET Hotel Demand Info Request Parameters

Query Parameter Description
DemandId Demand ID

The Common Response status codes are 200, 400, 401, 500.

Schedules

POST / Create Schedule

This is to create the schedule.

This API call allows a user to create a time-table for running a specific Rateshop at a predetermined date and time on a set schedule. While creating this schedule, the user can also define the mode of delivery. Options are a Web-Hook or through a queueid.

schedulename --> In this name the schedule will create.

scheduleshopid --> A unique id which was generated while creating the shop.

year --> No specification "2016"- One year only "2016, 2017" - Runs 2 years month

"" - runs all 12 months in a year

  1. January
  2. February
  3. March
  4. April
  5. May
  6. June
  7. July
  8. August
  9. September
  10. October
  11. November
  12. December

"1,3" January & March

dow

-All days in a week

"1" - Monday

"2" - Tuesday

"3" - Wednesday

"4" - Thursday

"5" - Friday

"6" - Saturday

"7" - Sunday

"1,3,5" - runs every Monday, Wednesday, and Friday

day --> "" - All day in a month 1 - 31 - Any day index in a calendar month. can be passed expression like "1,3,5"

hour --> "*" - All hours in the day 0 - 23 - Any hour index in a day. can be passed expression like "1,3,5". If the value is "*" it is considered as undefined and can be run at 10:00AM

minute --> "*" - All minutes in an hour 0 - 59 - Any minute index in an hour. can be passed expression like "1,3,5". If the value is "*" it is considered as undefined and can be run at defined hour

seconds --> "*" - All seconds in a minute 0 - 59 - Any second index in a minute. can be passed expression like "1,3,5". If the value is "*" it is considered as undefined and can be run at the defined minute

status -->

1 - Active

0 - In Active - If the status is Active the scheduler will execute this shop.

fetchtype --> The location/server space where the user would want their results to be stored ["s3","endpoint"]. eg:{"fetchtype":1}

  1. s3
  2. endpoint

s3: Email containing the path will be sent to the user once data is executed. Endpoint: User to specify a location of their preference.

Shoptype --> ["eventsimpact","eventsinfo","hoteldemand"]. eg:{"Shoptype":1}

  1. eventsimpact
  2. eventsinfo
  3. hoteldemand

startdate --> This parameter determines when the schedule starts

enddate --> This parameter determines when the schedule ends. If left undefined, the schedule runs indefinitely

Example 1 --> { "schedulename": "TestSchd_1130", "scheduleshopid": "2468", "shoptype": 1, "fetchtype": 1, "year": "2022", "month": "*", "dow": "2", "day": "*", "hour": "19", "minute": "30", "second": "*", "startdate": "2022-04-01", "enddate": "2022-12-31", "status": 1 }

POST Create Schedule Request Body Parameters

POST Create Schedule Request Response Sample Format (JSON Code Snippet)

{
  "schedulename": "string",
  "scheduleshopid": 0,
  "shoptype": 0,
  "fetchtype": 0,
  "year": "",
  "month": "",
  "dow": "",
  "day": "",
  "hour": "",
  "minute": "",
  "second": "",
  "startdate": "2023-04-18",
  "enddate": "2023-04-18",
  "status": 1
   }
  
Name Default and Sample Values Data Type Requirement (True or False)
schedulename - string Required /True
scheduleshopid - integer -
shoptype - integer -
fetchtype - integer -
fetchtype - integer -
year default: * example: * string -
month default: * example: * string -
dow default: * example: * string -
day default: * example: * string -
hour default: * example: * string -
minute default: * example: * string -
second string default: * example: * string -
startdate string($date) pattern: YYYY-MM-DD string -
enddate string($date) pattern: YYYY-MM-DD string -
status default: 1 example: 1 integer -

POST Create Schedule Response Codes

Status Meaning Description Schema
200 Success Success -
400 Error Bad Reuest -
401 Unauthorized Authorization has been denied for this request None
500 Internal Error - -

GET /View Schedule

This Scheduleid API call retrieves schedule configuration using the scheduleid as a mandatory parameter.

Scheduleid as integer (($int32)) path parameter.

GET /Edit Schedule

PUT Edit Schedule Request Response Sample Format (JSON Code Snippet)

{
  "scheduleid": 0,
  "scheduleshopid": 0,
  "schedulename": "string",
  "shoptype": 0,
  "fetchtype": 0,
  "year": "",
  "month": "",
  "dow": "",
  "day": "",
  "hour": "",
  "minute": "",
  "second": "",
  "startdate": "2023-04-18",
  "enddate": "2023-04-18",
  "status": 1
   }
  

This is to edit the schedule.

This API call allows a user to create a timetable for running a specific shop at a predetermined date and time on a set schedule. While creating this schedule, the user can also define the mode of delivery. Options are a Web-Hook or through a queueid.

schedulename --> In this name the schedule will create.

scheduleshopid --> An unique id which was generated while creating the shop.

year --> "*" - No specification "2016"- One year only "2016, 2017" - Runs 2 years

month --> "*" - runs all 12 months in a year

  1. January
  2. February
  3. March
  4. April
  5. May
  6. June
  7. July
  8. August
  9. September
  10. October
  11. November
  12. December

"1,3" January & March

dow

-All days in a week

"1" - Monday

"2" - Tuesday

"3" - Wednesday

"4" - Thursday

"5" - Friday

"6" - Saturday

"7" - Sunday

"1,3,5" - runs every Monday, Wednesday, and Friday

day --> "" - All day in a month 1 - 31 - Any day index in a calendar month. can be passed expression like "1,3,5"

hou --> "*" - All hours in the day 0 - 23 - Any hour index in a day. can be passed expression like "1,3,5". If the value is "*" it is considered as undefined and can be run at 10:00AM

minute --> "*" - All minutes in an hour 0 - 59 - Any minute index in an hour. can be passed expression like "1,3,5". If the value is "*" it is considered as undefined and can be run at defined hour

seconds --> "*" - All seconds in a minute 0 - 59 - Any second index in a minute. can be passed expression like "1,3,5". If the value is "*" it is considered as undefined and can be run at the defined minute

status -->

1 - Active

0 - In Active - If the status is Active the scheduler will execute this shop.

fetchtype --> The location/server space where the user would want their results to be stored ["s3","endpoint"]. eg:{"fetchtype":1}

  1. s3
  2. endpoint

s3: Email containing the path will be sent to the user once data is executed. Endpoint: User to specify a location of their preference.

Shoptype --> ["eventsimpact","eventsinfo","hoteldemand"]. eg:{"Shoptype":1}

  1. eventsimpact
  2. eventsinfo
  3. hoteldemand

startdate --> This parameter determines when the schedule starts

enddate --> This parameter determines when the schedule ends. If left undefined, the schedule runs indefinitely. All schedules are queued at the fifty-fifth minute of the past hour. Therefore, If any job is scheduled within the current hour, they will run only the next day.

Name Required / Mandatory (True/ False) Data Type Description
Scheduleid Required integer The id of the schedule
Name Data Type with Default Values and Example
Scheduleid integer
scheduleshopid integer
schedulename string
shoptype integer
fetchtype integer
year string default: * example: *
month string default: * example: *
dow string default: * example: *
day string default: * example: *
hour string default: * example: *
minute string default: * example: *
second string default: * example: *
startdate string($date) pattern: YYYY-MM-DD
enddate string($date) pattern: YYYY-MM-DD
status integer default: 1 example: 1
Status Meaning Description Schema
200 Success Success -
400 Error Bad Reuest -
401 Unauthorized Authorization has been denied for this request None
500 Internal Error - -

DELETE / Delete Schedule

{
"scheduleid" : [], }

This is to delete the schedule.

Name Required / Mandatory (True/ False) Data Type Description
scheduleid Required -> example: List [] integer The id of the schedule

Hooks

POST /End point

This is to create an endpoint.

This API call uses a WebHook to enable the delivery of data generated by your EDDIShop to an end-point you define. If you have defined a hook, data is delivered by default to this hook. This hook will POST the JSON Schema (as per the eventsinfo / eventimpact / hoteldemand) to your end-point The user should provide either Basic Auth (Username & Password) or OAuth 2.0 (token).

Note: While providing Basic Auth it should generate the new token. "authtype": ["Basic Auth","OAuth 2.0"]

Example 1 --> { "authtype": "Basic Auth", "endpoint": http://35.84.42.213:5000/ "username": "eddi", "password": "*******", "token": "" }

Example 1 --> { "authtype": "OAuth 2.0", "endpoint": http://35.84.42.213:5000/, "username": "", "password": "", "token": "71a49c4c-5694-11ec-bf63-0242ac130002" }.

POST Hooks Endpoint Request Parameters

POST Hooks Endpoint Request Sample (JSON) code

{
"username" : "string", "password" : "string", "endpoint": "string", "token": "string", "authtype": "string", }
Name Data Type Required - True / False
endpoint String minLength: 1 -
authtype string Nullable: true
username string Nullable: true
password string Nullable: true
token string Nullable: true

The Common Response status codes are 200, 400, 401, 500.

References

GET /AttributeDefinition

This is to view the Attribute Definition.

Request URL:

https://eddi.aggregateintelligence.com/AttributeDefinition/

No Parameters with Common Response Codes as 200, 400, 401, 500.

GET / Category

This is to view the Category.

Request URL:

https://eddi.aggregateintelligence.com/Category/

No Parameters with Common Response Codes as 200, 400, 401, 500.

GET /Category SubCategory Group

This is to view the Category / Sub-Categroy group.

Request URL:

https://eddi.aggregateintelligence.com/CategorySubCategoryGroup/

No Parameters with Common Response Codes as 200, 400, 401, 500.

GET /Class Definitions

This is to view the Class Definition.

Request URL:

https://eddi.aggregateintelligence.com/ClassDefinition/

No Parameters with Common Response Codes as 200, 400, 401, 500.

GET /Country

This is to view the Country.

Request URL:

https://eddi.aggregateintelligence.com/Country/

No Parameters with Common Response Codes as 200, 400, 401, 500.

GET / EventStatus

This is to view the Event Status.

Request URL:

https://eddi.aggregateintelligence.com/EventStatus/

No Parameters with Common Response Codes as 200, 400, 401, 500.

GET /Region

This is to view the Region

Request URL:

https://eddi.aggregateintelligence.com/Region

No Parameters with Common Response Codes as 200, 400, 401, 500.

GET / SubCategory

This is to view the Sub-Category

Request URL:

https://eddi.aggregateintelligence.com/SubCategory/

No Parameters with Common Response Codes as 200, 400, 401, 500.