A simple REST API for tracking AERPAW's ongoing experiments. This repository will also update airstrik.py with code to interface with this API
Name | Type | Description | Is Required |
---|---|---|---|
start_time |
int | The epoch time (in seconds) when the experiment began or will begin. | Yes |
end_by |
int | The epoch time (in seconds) when the experiment will end. | No |
long_name |
str | The human-readable name of the experiment. | No |
id |
str | The id of the experiment. This must be unique. | Yes |
description |
str | The description of what the experiment will do | No |
websocket_ip |
str | The ip to connect to (over websocket) | Yes |
websocket_credentials |
list[str, str | The username/password to connect with using websocket | Yes |
last_updated |
int | The time when the data was last updated. This is updated by the server, and cannot be changed by PUT/POST requests. | NA |
Returns the current experiments running in JSON format.
You must supply a dictionary of the data listed under Experiment Data (at least the required data).
Returns:
Key | Description |
---|---|
success |
Whether the POST request succeeded. |
error |
A description of the error (if success is false ) |
auth_hash |
A 128-digit number which is required to update this experiment with PUT requests later on. (if success is true ) |
You need to supply the parameters to update (for example, if you only wanted to update the description
, you could just pass the description in the JSON. Also required is the auth_hash
key, with the hash received from the POST request or another PUT request.
Returns:
Key | Description |
---|---|
success |
Whether the POST request succeeded. |
error |
A description of the error (if success is false ) |
auth_hash |
A updated 128-digit number that is required to update this experiment with PUT requests later on. (if success is true ) |
- Make start_time actually cancel/delete experiments (this is currently only done when AUTO_END is exceeded)
- Add config file with options like the automatic deletion of experiments, authorized IP addresses, database information, and other things.
- MongoDB integration for historical plots of experiments running.
- Potentially a better hash than the current one of just 128 digits.
- The other two components, namely integration with https://github.com/quantumbagel/airstrik.py and integration with the experiments themselves.
More to come!