aboutsummaryrefslogtreecommitdiffstats
path: root/api
diff options
context:
space:
mode:
authorterminaldweller <thabogre@gmail.com>2021-02-25 08:49:18 +0000
committerterminaldweller <thabogre@gmail.com>2021-02-25 08:49:18 +0000
commitff12756915d452e7b92959062ed6315adf0e424e (patch)
treebb86d9405a8a63d4865594f20a13327920485cf8 /api
parentremoved the expression parser. using a lib now. the addalert endpoint is work... (diff)
downloadhived-ff12756915d452e7b92959062ed6315adf0e424e.tar.gz
hived-ff12756915d452e7b92959062ed6315adf0e424e.zip
added a new endpoint for changelly. added somewhat decent logging. cleaned up the code a bit. the secrets are all environment variables now since we want publicly availale CI. the api and postman docs are added. added travis integration.
Diffstat (limited to 'api')
-rw-r--r--api/hived.postman_collection.json64
-rw-r--r--api/swagger.yaml101
2 files changed, 165 insertions, 0 deletions
diff --git a/api/hived.postman_collection.json b/api/hived.postman_collection.json
new file mode 100644
index 0000000..3cab1e7
--- /dev/null
+++ b/api/hived.postman_collection.json
@@ -0,0 +1,64 @@
+{
+ "info": {
+ "_postman_id": "ca2c71c1-27a5-466c-a3c7-16b71f62af34",
+ "name": "hived",
+ "schema": "https://schema.getpostman.com/json/collection/v2.0.0/collection.json"
+ },
+ "item": [
+ {
+ "name": "price",
+ "request": {
+ "method": "GET",
+ "header": [],
+ "url": ""
+ },
+ "response": []
+ },
+ {
+ "name": "pair",
+ "request": {
+ "method": "GET",
+ "header": [],
+ "url": {
+ "raw": "http://127.0.0.1:8008/pair?one=ETH&two=CAKE&multiplier=4.0",
+ "protocol": "http",
+ "host": [
+ "127",
+ "0",
+ "0",
+ "1"
+ ],
+ "port": "8008",
+ "path": [
+ "pair"
+ ],
+ "query": [
+ {
+ "key": "one",
+ "value": "ETH"
+ },
+ {
+ "key": "two",
+ "value": "CAKE"
+ },
+ {
+ "key": "multiplier",
+ "value": "4.0"
+ }
+ ]
+ }
+ },
+ "response": []
+ },
+ {
+ "name": "addalert",
+ "request": {
+ "method": "GET",
+ "header": [],
+ "url": ""
+ },
+ "response": []
+ }
+ ],
+ "protocolProfileBehavior": {}
+} \ No newline at end of file
diff --git a/api/swagger.yaml b/api/swagger.yaml
new file mode 100644
index 0000000..9100e82
--- /dev/null
+++ b/api/swagger.yaml
@@ -0,0 +1,101 @@
+openapi: 3.0.0
+info:
+ version: 1.0.0-oas3
+ title: hived
+ description: hived's API
+servers:
+ - description: SwaggerHub API Auto Mocking
+ url: 'https://virtserver.swaggerhub.com/xashmith/hived/0.1'
+paths:
+ /price:
+ get:
+ description: Returns the price of the crypto
+ parameters:
+ - name: name
+ in: query
+ description: the symbol of the cryptocurrency
+ schema:
+ type: string
+ - name: unit
+ in: query
+ description: the unit the return the price in
+ schema:
+ type: string
+ responses:
+ '200':
+ description: Successful response
+ content:
+ application/json:
+ schema:
+ type: object
+ required:
+ - name
+ - unit
+ - price
+ properties:
+ name:
+ type: string
+ unit:
+ type: string
+ price:
+ type: number
+ /pair:
+ get:
+ description: Returns the ratio of one to two multiplied by a value
+ parameters:
+ - name: one
+ in: query
+ description: the name of the currency that's going to be multiplied
+ schema:
+ type: string
+ - name: two
+ in: query
+ description: the name of the second currency
+ schema:
+ type: string
+ - name: multiplier
+ in: query
+ description: the amount hte first currency is going to be multiplied
+ schema:
+ type: number
+ responses:
+ '200':
+ description: Successful response
+ content:
+ application/json:
+ schema:
+ type: object
+ required:
+ - ratio
+ properties:
+ ratio:
+ type: number
+ /addalerts:
+ post:
+ description: Add alerts to the alertmanager's list
+ requestBody:
+ required: true
+ content:
+ application/json:
+ schema:
+ type: object
+ required:
+ - name
+ - expr
+ properties:
+ name:
+ type: string
+ expr:
+ type: string
+ responses:
+ '200':
+ description: successful update
+ content:
+ application/json:
+ schema:
+ type: object
+ properties:
+ err:
+ type: string
+ isSuccessful:
+ type: boolean