Add API spec to resolve #2
This commit is contained in:
parent
ab4ee6a00a
commit
3fdd8859ce
|
@ -0,0 +1,51 @@
|
|||
API Endpoint Documentation
|
||||
==========================
|
||||
|
||||
Arrival
|
||||
```javascript
|
||||
[Request]
|
||||
POST /arrival
|
||||
|
||||
{
|
||||
"name": "Firstname Lastname",
|
||||
"agreetoguidelines": true
|
||||
}
|
||||
|
||||
[Response]
|
||||
200 OK
|
||||
```
|
||||
|
||||
|
||||
Departure
|
||||
```javascript
|
||||
[Request]
|
||||
POST /departure
|
||||
|
||||
{
|
||||
"name": "Firstname Lastname",
|
||||
"cleanedworkspace": true
|
||||
}
|
||||
|
||||
[Response]
|
||||
OK
|
||||
```
|
||||
|
||||
|
||||
Retrieve data
|
||||
```javascript
|
||||
[Request]
|
||||
GET /data
|
||||
Authorization: Basic < base64 USER:PASSWORD >
|
||||
|
||||
[Response]
|
||||
200 OK
|
||||
|
||||
[
|
||||
{
|
||||
'name': 'firstname-middlename-lastname',
|
||||
'arrival': 'UTC-ISO-TIMESTAMP',
|
||||
'departure': 'UTC-ISO-TIMESTAMP'
|
||||
},
|
||||
...
|
||||
]
|
||||
```
|
|
@ -1,5 +1,5 @@
|
|||
Database Layout
|
||||
===============
|
||||
Database Layout Documentation
|
||||
=============================
|
||||
|
||||
Default table
|
||||
```
|
||||
|
@ -8,6 +8,7 @@ Default table
|
|||
'name': 'firstname-middlename-lastname',
|
||||
'arrival': 'UTC-ISO-TIMESTAMP',
|
||||
'departure': 'UTC-ISO-TIMESTAMP'
|
||||
}
|
||||
},
|
||||
...
|
||||
]
|
||||
```
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
import json
|
||||
from datetime import datetime
|
||||
from slugify import slugify
|
||||
|
||||
from .config import config
|
||||
if not config:
|
||||
|
@ -31,10 +32,11 @@ def post_time():
|
|||
|
||||
# TODO: JSON schema validation
|
||||
# TODO: JSON content validation
|
||||
name = slugify(data['name'])
|
||||
|
||||
now = datetime.utcnow()
|
||||
db.insert({
|
||||
'name': data['name'],
|
||||
'name': name,
|
||||
'arrival': now.isoformat(),
|
||||
'departure': None
|
||||
})
|
||||
|
|
Loading…
Reference in New Issue