# ChatBot

Das moPage Module **ChatBot** bietet dem Website Besucher die Möglichkeit mittels Chat an gewünschte Informationen zu kommen.

## Authentifizierung/Request Headers

Die Authentifizierung erfolgt mit einem vorgängig kommunizierten API Key, der im Request Header wie folgt mitzuliefern ist:

```
X-Api-Key: {client_api_key_here}
```

Zusätzlich muss der Content-Type auf Application/json gesetzt werden:

```
 Content-Type: Application/json
```

## Endpoint

**URL**

```
POST https://api.mopage.ch/api/v1/chatbot/ask/events 
```

**Body**

```json
{
 "datefrom": "yyyy-mm-dd hh:mm:ss",
 "dateto": "yyyy-mm-dd hh:mm:ss",
 "ask": "category term, searchterm...",
 "latitude": 47.123456,
 "longitude": 9.123456
} 
```

Die Felder `ask`, `latitude` und `longitude` sind dabei fakultativ. Werden die nicht geliefert, werden einfach Events des angegeb. Zeitraums geliefert.

## Response

<table border="1" class="table" id="bkmrk-status-text-beschrei" style="width: 100%; border-collapse: collapse;"><thead><tr><th style="width: 7.89687%;">Status</th><th style="width: 58.8493%;">Text</th><th style="width: 33.3731%;">Beschreibung</th></tr></thead><tbody><tr><td style="width: 7.89687%;">200</td><td style="width: 58.8493%;">OK</td><td style="width: 33.3731%;">Resultat als JSON, s. unten </td></tr><tr><td style="width: 7.89687%;">400</td><td style="width: 58.8493%;">Bad Request</td><td style="width: 33.3731%;">Input Parameter not valid. ()</td></tr><tr><td style="width: 7.89687%;">401</td><td style="width: 58.8493%;">Unauthorized</td><td style="width: 33.3731%;">No permission with provided key.</td></tr></tbody></table>

**Resultat**

```json
[
    {
    "title": "Konzert Grabenhalle",
    "datefrom": "2018-07-10 20:00:00",
    "dateto": "2018-07-10 23:00:00",
    "urldetails": "https://www.mopage.ch/123456",
    "urlimage": "https://dl.mopage.ch/data/eventimg.jpg",
    "locationinfo": "Grabenhalle\n9000 St.Gallen",
    "latitude": 47.123,
    "longitude": 9.123,
    "categories": ["Rubrik 1", "Rubrik 2"...]
    },
    {},
    ...
]
```