Difference between revisions of "API help"
From PhotoVoltaic Logger new generation
(Created page with "Here you have all the possible requests, which the API r3 supports. "ANY /api/r3/help": { "since": "v1", "description": "This help, overview of valid calls" }, ...") |
m |
||
| (3 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
| − | Here you have all the possible requests, which the API | + | {{TOCright}} |
| + | Here you have all the possible requests, which the [[API]] supports at the moment. | ||
| + | It is '''always recommended''' to use latest release! | ||
| + | |||
| + | === r4 === | ||
| + | |||
| + | <pre><nowiki> | ||
| + | { | ||
| + | "/api/r4/attributes/:guid(/:attribute)": { | ||
| + | "methods": "GET", | ||
| + | "since": "r2", | ||
| + | "description": "Fetch all channel attributes or specific channel attribute", | ||
| + | "apikey": 0, | ||
| + | "conditions": { | ||
| + | "guid": "(\\w{4}-){7}\\w{4}", | ||
| + | "attribute": "\\w+" | ||
| + | } | ||
| + | }, | ||
| + | "/api/r4/batch/:guid": { | ||
| + | "methods": "PUT", | ||
| + | "since": "r2", | ||
| + | "description": "Save multiple reading values", | ||
| + | "apikey": 1, | ||
| + | "payload": { | ||
| + | "<timestamp>,<value>;...": "Semicolon separated timestamp and value data sets", | ||
| + | "<date time>,<value>;...": "Semicolon separated date time and value data sets", | ||
| + | "<date>,<time>,<value>;...": "Semicolon separated date, time and value data sets" | ||
| + | }, | ||
| + | "conditions": { | ||
| + | "guid": "(\\w{4}-){7}\\w{4}" | ||
| + | } | ||
| + | }, | ||
| + | "/api/r4/channel/:guid": { | ||
| + | "methods": "GET", | ||
| + | "since": "r3", | ||
| + | "description": "Fetch single channel attribute", | ||
| + | "apikey": 0, | ||
| + | "conditions": { | ||
| + | "guid": "(\\w{4}-){7}\\w{4}" | ||
| + | } | ||
| + | }, | ||
| + | "/api/r4/channel/:guid/:attribute": { | ||
| + | "methods": "GET", | ||
| + | "since": "r3", | ||
| + | "description": "Fetch all channel attributes or specific channel attribute", | ||
| + | "apikey": 0, | ||
| + | "conditions": { | ||
| + | "guid": "(\\w{4}-){7}\\w{4}", | ||
| + | "attribute": "\\w+" | ||
| + | } | ||
| + | }, | ||
| + | "/api/r4/channels": { | ||
| + | "methods": "GET", | ||
| + | "since": "r3", | ||
| + | "description": "Fetch all channels", | ||
| + | "apikey": 0 | ||
| + | }, | ||
| + | "/api/r4/csv/:guid": { | ||
| + | "methods": "PUT", | ||
| + | "since": "r2", | ||
| + | "description": "Save multiple reading values from CSV file", | ||
| + | "apikey": 1, | ||
| + | "payload": { | ||
| + | "<timestamp>;<value>": "Semicolon separated timestamp and value data rows", | ||
| + | "<date time>;<value>": "Semicolon separated date time and value data rows", | ||
| + | "<date>;<time>;<value>": "Semicolon separated date, time and value data rows" | ||
| + | }, | ||
| + | "conditions": { | ||
| + | "guid": "(\\w{4}-){7}\\w{4}" | ||
| + | } | ||
| + | }, | ||
| + | "/api/r4/data/:guid": { | ||
| + | "methods": "PUT", | ||
| + | "since": "r2", | ||
| + | "description": "Save a reading value", | ||
| + | "apikey": 1, | ||
| + | "payload": "{\"<data>\":\"<value>\"}", | ||
| + | "conditions": { | ||
| + | "guid": "(\\w{4}-){7}\\w{4}" | ||
| + | } | ||
| + | }, | ||
| + | "/api/r4/data/:guid(/:p1(/:p2))": { | ||
| + | "methods": "GET", | ||
| + | "since": "r2", | ||
| + | "description": "Read reading values", | ||
| + | "apikey": 0, | ||
| + | "parameters": { | ||
| + | "start": { | ||
| + | "description": "Start timestamp for readout, default today 00:00", | ||
| + | "value": [ | ||
| + | "YYYY-mm-dd HH:ii:ss", | ||
| + | "seconds since 1970", | ||
| + | "relative from now, see http://php.net/manual/en/datetime.formats.relative.php", | ||
| + | "sunrise - needs location in config/config.php" | ||
| + | ] | ||
| + | }, | ||
| + | "end": { | ||
| + | "description": "End timestamp for readout, default today midnight", | ||
| + | "value": [ | ||
| + | "YYYY-mm-dd HH:ii:ss", | ||
| + | "seconds since 1970", | ||
| + | "relative from now, see http://php.net/manual/en/datetime.formats.relative.php", | ||
| + | "sunset - needs location in config/config.php" | ||
| + | ] | ||
| + | }, | ||
| + | "period": { | ||
| + | "description": "Aggregation period, default none", | ||
| + | "value": [ | ||
| + | "[0-9.]+minutes", | ||
| + | "[0-9.]+hours", | ||
| + | "[0-9.]+days", | ||
| + | "[0-9.]+weeks", | ||
| + | "[0-9.]+month", | ||
| + | "[0-9.]+quarters", | ||
| + | "[0-9.]+years", | ||
| + | "last", | ||
| + | "readlast", | ||
| + | "all" | ||
| + | ] | ||
| + | }, | ||
| + | "attributes": { | ||
| + | "description": "Return channel attributes as 1st line", | ||
| + | "value": [ | ||
| + | 1, | ||
| + | "true" | ||
| + | ] | ||
| + | }, | ||
| + | "full": { | ||
| + | "description": "Return all data, not only timestamp and value", | ||
| + | "value": [ | ||
| + | 1, | ||
| + | "true" | ||
| + | ] | ||
| + | }, | ||
| + | "short": { | ||
| + | "description": "Return data as array, not object", | ||
| + | "value": [ | ||
| + | 1, | ||
| + | "true" | ||
| + | ] | ||
| + | } | ||
| + | }, | ||
| + | "conditions": { | ||
| + | "guid": "(\\w{4}-){7}\\w{4}" | ||
| + | } | ||
| + | }, | ||
| + | "/api/r4/data/:guid/:timestamp": { | ||
| + | "methods": "DELETE", | ||
| + | "since": "r2", | ||
| + | "description": "Delete a reading value", | ||
| + | "apikey": 1, | ||
| + | "conditions": { | ||
| + | "guid": "(\\w{4}-){7}\\w{4}" | ||
| + | } | ||
| + | }, | ||
| + | "/api/r4/daylight/(/:offset)": { | ||
| + | "methods": "GET", | ||
| + | "since": "r3", | ||
| + | "description": "Check for daylight for configured location, accept additional minutes before/after", | ||
| + | "apikey": 0, | ||
| + | "conditions": { | ||
| + | "offset": "\\d+" | ||
| + | } | ||
| + | }, | ||
| + | "/api/r4/daylight/:latitude/:longitude(/:offset)": { | ||
| + | "methods": "GET", | ||
| + | "since": "r3", | ||
| + | "description": "Check for daylight, accept additional minutes before/after", | ||
| + | "apikey": 0, | ||
| + | "conditions": { | ||
| + | "latitude": "[\\d.-]+", | ||
| + | "longitude": "[\\d.-]+", | ||
| + | "offset": "\\d+" | ||
| + | } | ||
| + | }, | ||
| + | "/api/r4/hash": { | ||
| + | "methods": "GET, POST", | ||
| + | "since": "r3", | ||
| + | "description": "Create MD5 and SHA1 hashes and a slug for the given text", | ||
| + | "apikey": 0, | ||
| + | "parameters": { | ||
| + | "text": { | ||
| + | "description": "Text to make hashes for" | ||
| + | } | ||
| + | } | ||
| + | }, | ||
| + | "/api/r4/help": { | ||
| + | "methods": "ANY", | ||
| + | "since": "r1", | ||
| + | "description": "This help, overview of valid calls", | ||
| + | "apikey": 0 | ||
| + | }, | ||
| + | "/api/r4/json/:path+": { | ||
| + | "methods": "POST", | ||
| + | "since": "r1", | ||
| + | "description": "Extract a section/value from given JSON data sended in request body e.g. from a file", | ||
| + | "apikey": 0 | ||
| + | }, | ||
| + | "/api/r4/log": { | ||
| + | "methods": "PUT", | ||
| + | "since": "r2", | ||
| + | "description": "Store new log entry, scope defaults to 'API rr4'", | ||
| + | "apikey": 1, | ||
| + | "payload": "{\"scope\":\"...\", \"message\":\"...\"}" | ||
| + | }, | ||
| + | "/api/r4/log/:id": { | ||
| + | "methods": "DELETE", | ||
| + | "since": "r2", | ||
| + | "description": "Delete a log entry", | ||
| + | "apikey": 1, | ||
| + | "conditions": { | ||
| + | "id": "\\d+" | ||
| + | } | ||
| + | }, | ||
| + | "/api/r4/log/all(/:page(/:count))": { | ||
| + | "methods": "GET", | ||
| + | "since": "r2", | ||
| + | "description": "Read all log entries, paginated for :page, :count entries", | ||
| + | "apikey": 1 | ||
| + | }, | ||
| + | "/api/r4/ping": { | ||
| + | "methods": "GET", | ||
| + | "since": "r4", | ||
| + | "description": "For new relic pinger", | ||
| + | "apikey": 0 | ||
| + | }, | ||
| + | "/api/r4/status": { | ||
| + | "methods": "GET", | ||
| + | "since": "r2", | ||
| + | "description": "System status", | ||
| + | "apikey": 1 | ||
| + | }, | ||
| + | "/api/r4/sunrise/(/:date)": { | ||
| + | "methods": "GET", | ||
| + | "since": "r3", | ||
| + | "description": "Get sunrise of day, using configured loaction", | ||
| + | "apikey": 0, | ||
| + | "conditions": { | ||
| + | "date": "\\d{4}-\\d{2}-\\d{2}" | ||
| + | } | ||
| + | }, | ||
| + | "/api/r4/sunrise/:latitude/:longitude(/:date)": { | ||
| + | "methods": "GET", | ||
| + | "since": "r3", | ||
| + | "description": "Get sunrise for location and day", | ||
| + | "apikey": 0, | ||
| + | "conditions": { | ||
| + | "latitude": "[\\d.-]+", | ||
| + | "longitude": "[\\d.-]+", | ||
| + | "date": "\\d{4}-\\d{2}-\\d{2}" | ||
| + | } | ||
| + | }, | ||
| + | "/api/r4/sunset/(/:date)": { | ||
| + | "methods": "GET", | ||
| + | "since": "r3", | ||
| + | "description": "Get sunset of day, using configured loaction", | ||
| + | "apikey": 0, | ||
| + | "conditions": { | ||
| + | "date": "\\d{4}-\\d{2}-\\d{2}" | ||
| + | } | ||
| + | }, | ||
| + | "/api/r4/sunset/:latitude/:longitude(/:date)": { | ||
| + | "methods": "GET", | ||
| + | "since": "r3", | ||
| + | "description": "Get sunset of day", | ||
| + | "apikey": 0, | ||
| + | "conditions": { | ||
| + | "latitude": "[\\d.-]+", | ||
| + | "longitude": "[\\d.-]+", | ||
| + | "date": "\\d{4}-\\d{2}-\\d{2}" | ||
| + | } | ||
| + | }, | ||
| + | "/api/r4/tariff": { | ||
| + | "methods": "GET", | ||
| + | "since": "r4", | ||
| + | "description": "Extract all tariffs", | ||
| + | "apikey": 1 | ||
| + | }, | ||
| + | "/api/r4/tariff/:id": { | ||
| + | "methods": "GET", | ||
| + | "since": "r4", | ||
| + | "description": "Extract a tariff", | ||
| + | "apikey": 1, | ||
| + | "conditions": { | ||
| + | "id": "\\d+" | ||
| + | } | ||
| + | }, | ||
| + | "/api/r4/tariff/:id/:date": { | ||
| + | "methods": "GET", | ||
| + | "since": "r4", | ||
| + | "description": "Extract tariff for a day", | ||
| + | "apikey": 1, | ||
| + | "conditions": { | ||
| + | "id": "\\d+", | ||
| + | "date": "[0-9]{4}-[0-9]{2}-[0-9]{2}" | ||
| + | } | ||
| + | }, | ||
| + | "/api/r4/tariff/:id/time/:date(/:to)": { | ||
| + | "methods": "GET", | ||
| + | "since": "r4", | ||
| + | "description": "Extract tariff for a day", | ||
| + | "apikey": 1, | ||
| + | "conditions": { | ||
| + | "id": "\\d+", | ||
| + | "date": "[0-9]{4}-[0-9]{2}-[0-9]{2}", | ||
| + | "to": "[0-9]{4}-[0-9]{2}-[0-9]{2}" | ||
| + | } | ||
| + | }, | ||
| + | "/api/r4/translation": { | ||
| + | "methods": "GET", | ||
| + | "since": "r3", | ||
| + | "description": "Extract english texts for translation", | ||
| + | "apikey": 0 | ||
| + | }, | ||
| + | "/api/r4/tree/:id": { | ||
| + | "methods": "DELETE", | ||
| + | "since": "r4", | ||
| + | "description": "Delete channel from channel tree", | ||
| + | "apikey": 1, | ||
| + | "conditions": { | ||
| + | "id": "\\d+" | ||
| + | } | ||
| + | }, | ||
| + | "/api/r4/view": { | ||
| + | "methods": "PUT", | ||
| + | "since": "r3", | ||
| + | "description": "Create chart view data, return slug", | ||
| + | "apikey": 0 | ||
| + | }, | ||
| + | "/api/r4/view/:slug": { | ||
| + | "methods": "DELETE", | ||
| + | "since": "r3", | ||
| + | "description": "Detele chart view data by slug", | ||
| + | "apikey": 1, | ||
| + | "conditions": { | ||
| + | "slug": "[\\w\\d-]+" | ||
| + | } | ||
| + | }, | ||
| + | "/api/r4/views(/:language)": { | ||
| + | "methods": "GET", | ||
| + | "since": "r3", | ||
| + | "description": "Fetch all charts", | ||
| + | "apikey": 0 | ||
| + | } | ||
| + | }</nowiki></pre> | ||
| + | |||
| + | === r3 === | ||
| + | |||
| + | <pre><nowiki> | ||
"ANY /api/r3/help": { | "ANY /api/r3/help": { | ||
"since": "v1", | "since": "v1", | ||
| Line 281: | Line 629: | ||
"description": "Extract english texts for translation" | "description": "Extract english texts for translation" | ||
} | } | ||
| + | </nowiki></pre> | ||
| + | |||
| + | === r2 === | ||
| + | |||
| + | <pre><nowiki> | ||
| + | { | ||
| + | "ANY /api/r2/help": { | ||
| + | "since": "v1", | ||
| + | "description": "This help, overview of valid calls" | ||
| + | }, | ||
| + | "GET /api/r2/:guid": { | ||
| + | "since": "v2", | ||
| + | "description": "Fetch attributes" | ||
| + | }, | ||
| + | "GET /api/r2/:guid/:attribute": { | ||
| + | "since": "v2", | ||
| + | "description": "Fetch single channel attribute" | ||
| + | }, | ||
| + | "GET /api/r2/attributes/:guid(/:attribute)": { | ||
| + | "since": "v2", | ||
| + | "description": "Fetch all channel attributes or specific channel attribute" | ||
| + | }, | ||
| + | "PUT /api/r2/data/:guid": { | ||
| + | "since": "v2", | ||
| + | "description": "Save a reading value", | ||
| + | "payload": "{\"data\":\"<value>\"}" | ||
| + | }, | ||
| + | "DELETE /api/r2/data/:guid/:timestamp": { | ||
| + | "since": "v2", | ||
| + | "description": "Delete a reading value" | ||
| + | }, | ||
| + | "GET /api/r2/data/:guid(/:p1(/:p2))": { | ||
| + | "since": "v2", | ||
| + | "description": "Read reading values", | ||
| + | "parameters": { | ||
| + | "start": { | ||
| + | "description": "Start timestamp for readout, default today 00:00", | ||
| + | "value": [ | ||
| + | "YYYY-mm-dd HH:ii:ss", | ||
| + | "seconds since 1970", | ||
| + | "relative from now, see http://php.net/manual/en/datetime.formats.relative.php" | ||
| + | ] | ||
| + | }, | ||
| + | "end": { | ||
| + | "description": "End timestamp for readout, default today midnight", | ||
| + | "value": [ | ||
| + | "YYYY-mm-dd HH:ii:ss", | ||
| + | "seconds since 1970", | ||
| + | "relative from now, see http://php.net/manual/en/datetime.formats.relative.php" | ||
| + | ] | ||
| + | }, | ||
| + | "period": { | ||
| + | "description": "Aggregation period, default none", | ||
| + | "value": [ | ||
| + | "[0-9.]+minutes", | ||
| + | "[0-9.]+hours", | ||
| + | "[0-9.]+days", | ||
| + | "[0-9.]+weeks", | ||
| + | "[0-9.]+month", | ||
| + | "[0-9.]+quarters", | ||
| + | "[0-9.]+years", | ||
| + | "last", | ||
| + | "readlast", | ||
| + | "all" | ||
| + | ] | ||
| + | }, | ||
| + | "attributes": { | ||
| + | "description": "Return channel attributes as 1st line", | ||
| + | "value": [ | ||
| + | 1, | ||
| + | "true" | ||
| + | ] | ||
| + | }, | ||
| + | "full": { | ||
| + | "description": "Return all data, not only timestamp and value", | ||
| + | "value": [ | ||
| + | 1, | ||
| + | "true" | ||
| + | ] | ||
| + | }, | ||
| + | "short": { | ||
| + | "description": "Return data as array, not object", | ||
| + | "value": [ | ||
| + | 1, | ||
| + | "true" | ||
| + | ] | ||
| + | } | ||
| + | } | ||
| + | }, | ||
| + | "PUT /api/r2/csv/:guid": { | ||
| + | "since": "v2", | ||
| + | "description": "Save multiple reading values", | ||
| + | "payload": { | ||
| + | "<timestamp>;<value>": "Semicolon separated timestamp and value data rows", | ||
| + | "<date time>;<value>": "Semicolon separated date time and value data rows", | ||
| + | "<date>;<time>;<value>": "Semicolon separated date, time and value data rows" | ||
| + | } | ||
| + | }, | ||
| + | "PUT /api/r2/batch/:guid": { | ||
| + | "since": "v2", | ||
| + | "description": "Save multiple reading values", | ||
| + | "payload": { | ||
| + | "<timestamp>,<value>;...": "Semicolon separated timestamp and value data sets", | ||
| + | "<date time>,<value>;...": "Semicolon separated date time and value data sets", | ||
| + | "<date>,<time>,<value>;...": "Semicolon separated date, time and value data sets" | ||
| + | } | ||
| + | }, | ||
| + | "PUT /api/r2/log": { | ||
| + | "since": "v2", | ||
| + | "description": "Store new log entry, scope defaults to 'API r2'", | ||
| + | "payload": "{\"scope\":\"...\", \"message\":\"...\"}" | ||
| + | }, | ||
| + | "GET /api/r2/log/:id": { | ||
| + | "since": "v2", | ||
| + | "description": "Read a log entry" | ||
| + | }, | ||
| + | "GET /api/r2/log/all(/:page(/:count))": { | ||
| + | "since": "v2", | ||
| + | "description": "Read all log entries, paginated for :page, :count entries" | ||
| + | }, | ||
| + | "POST /api/r2/log/:id": { | ||
| + | "since": "v2", | ||
| + | "description": "Update a log entry", | ||
| + | "payload": "{\"scope\":\"...\", \"message\":\"...\"}" | ||
| + | }, | ||
| + | "DELETE /api/r2/log/:id": { | ||
| + | "since": "v2", | ||
| + | "description": "Delete a log entry" | ||
| + | }, | ||
| + | "GET /api/r2/status": { | ||
| + | "since": "v2", | ||
| + | "description": "System status" | ||
| + | } | ||
| + | } | ||
| + | </nowiki></pre> | ||
Latest revision as of 13:26, 4 July 2014
Here you have all the possible requests, which the API supports at the moment.
It is always recommended to use latest release!
r4
{
"/api/r4/attributes/:guid(/:attribute)": {
"methods": "GET",
"since": "r2",
"description": "Fetch all channel attributes or specific channel attribute",
"apikey": 0,
"conditions": {
"guid": "(\\w{4}-){7}\\w{4}",
"attribute": "\\w+"
}
},
"/api/r4/batch/:guid": {
"methods": "PUT",
"since": "r2",
"description": "Save multiple reading values",
"apikey": 1,
"payload": {
"<timestamp>,<value>;...": "Semicolon separated timestamp and value data sets",
"<date time>,<value>;...": "Semicolon separated date time and value data sets",
"<date>,<time>,<value>;...": "Semicolon separated date, time and value data sets"
},
"conditions": {
"guid": "(\\w{4}-){7}\\w{4}"
}
},
"/api/r4/channel/:guid": {
"methods": "GET",
"since": "r3",
"description": "Fetch single channel attribute",
"apikey": 0,
"conditions": {
"guid": "(\\w{4}-){7}\\w{4}"
}
},
"/api/r4/channel/:guid/:attribute": {
"methods": "GET",
"since": "r3",
"description": "Fetch all channel attributes or specific channel attribute",
"apikey": 0,
"conditions": {
"guid": "(\\w{4}-){7}\\w{4}",
"attribute": "\\w+"
}
},
"/api/r4/channels": {
"methods": "GET",
"since": "r3",
"description": "Fetch all channels",
"apikey": 0
},
"/api/r4/csv/:guid": {
"methods": "PUT",
"since": "r2",
"description": "Save multiple reading values from CSV file",
"apikey": 1,
"payload": {
"<timestamp>;<value>": "Semicolon separated timestamp and value data rows",
"<date time>;<value>": "Semicolon separated date time and value data rows",
"<date>;<time>;<value>": "Semicolon separated date, time and value data rows"
},
"conditions": {
"guid": "(\\w{4}-){7}\\w{4}"
}
},
"/api/r4/data/:guid": {
"methods": "PUT",
"since": "r2",
"description": "Save a reading value",
"apikey": 1,
"payload": "{\"<data>\":\"<value>\"}",
"conditions": {
"guid": "(\\w{4}-){7}\\w{4}"
}
},
"/api/r4/data/:guid(/:p1(/:p2))": {
"methods": "GET",
"since": "r2",
"description": "Read reading values",
"apikey": 0,
"parameters": {
"start": {
"description": "Start timestamp for readout, default today 00:00",
"value": [
"YYYY-mm-dd HH:ii:ss",
"seconds since 1970",
"relative from now, see http://php.net/manual/en/datetime.formats.relative.php",
"sunrise - needs location in config/config.php"
]
},
"end": {
"description": "End timestamp for readout, default today midnight",
"value": [
"YYYY-mm-dd HH:ii:ss",
"seconds since 1970",
"relative from now, see http://php.net/manual/en/datetime.formats.relative.php",
"sunset - needs location in config/config.php"
]
},
"period": {
"description": "Aggregation period, default none",
"value": [
"[0-9.]+minutes",
"[0-9.]+hours",
"[0-9.]+days",
"[0-9.]+weeks",
"[0-9.]+month",
"[0-9.]+quarters",
"[0-9.]+years",
"last",
"readlast",
"all"
]
},
"attributes": {
"description": "Return channel attributes as 1st line",
"value": [
1,
"true"
]
},
"full": {
"description": "Return all data, not only timestamp and value",
"value": [
1,
"true"
]
},
"short": {
"description": "Return data as array, not object",
"value": [
1,
"true"
]
}
},
"conditions": {
"guid": "(\\w{4}-){7}\\w{4}"
}
},
"/api/r4/data/:guid/:timestamp": {
"methods": "DELETE",
"since": "r2",
"description": "Delete a reading value",
"apikey": 1,
"conditions": {
"guid": "(\\w{4}-){7}\\w{4}"
}
},
"/api/r4/daylight/(/:offset)": {
"methods": "GET",
"since": "r3",
"description": "Check for daylight for configured location, accept additional minutes before/after",
"apikey": 0,
"conditions": {
"offset": "\\d+"
}
},
"/api/r4/daylight/:latitude/:longitude(/:offset)": {
"methods": "GET",
"since": "r3",
"description": "Check for daylight, accept additional minutes before/after",
"apikey": 0,
"conditions": {
"latitude": "[\\d.-]+",
"longitude": "[\\d.-]+",
"offset": "\\d+"
}
},
"/api/r4/hash": {
"methods": "GET, POST",
"since": "r3",
"description": "Create MD5 and SHA1 hashes and a slug for the given text",
"apikey": 0,
"parameters": {
"text": {
"description": "Text to make hashes for"
}
}
},
"/api/r4/help": {
"methods": "ANY",
"since": "r1",
"description": "This help, overview of valid calls",
"apikey": 0
},
"/api/r4/json/:path+": {
"methods": "POST",
"since": "r1",
"description": "Extract a section/value from given JSON data sended in request body e.g. from a file",
"apikey": 0
},
"/api/r4/log": {
"methods": "PUT",
"since": "r2",
"description": "Store new log entry, scope defaults to 'API rr4'",
"apikey": 1,
"payload": "{\"scope\":\"...\", \"message\":\"...\"}"
},
"/api/r4/log/:id": {
"methods": "DELETE",
"since": "r2",
"description": "Delete a log entry",
"apikey": 1,
"conditions": {
"id": "\\d+"
}
},
"/api/r4/log/all(/:page(/:count))": {
"methods": "GET",
"since": "r2",
"description": "Read all log entries, paginated for :page, :count entries",
"apikey": 1
},
"/api/r4/ping": {
"methods": "GET",
"since": "r4",
"description": "For new relic pinger",
"apikey": 0
},
"/api/r4/status": {
"methods": "GET",
"since": "r2",
"description": "System status",
"apikey": 1
},
"/api/r4/sunrise/(/:date)": {
"methods": "GET",
"since": "r3",
"description": "Get sunrise of day, using configured loaction",
"apikey": 0,
"conditions": {
"date": "\\d{4}-\\d{2}-\\d{2}"
}
},
"/api/r4/sunrise/:latitude/:longitude(/:date)": {
"methods": "GET",
"since": "r3",
"description": "Get sunrise for location and day",
"apikey": 0,
"conditions": {
"latitude": "[\\d.-]+",
"longitude": "[\\d.-]+",
"date": "\\d{4}-\\d{2}-\\d{2}"
}
},
"/api/r4/sunset/(/:date)": {
"methods": "GET",
"since": "r3",
"description": "Get sunset of day, using configured loaction",
"apikey": 0,
"conditions": {
"date": "\\d{4}-\\d{2}-\\d{2}"
}
},
"/api/r4/sunset/:latitude/:longitude(/:date)": {
"methods": "GET",
"since": "r3",
"description": "Get sunset of day",
"apikey": 0,
"conditions": {
"latitude": "[\\d.-]+",
"longitude": "[\\d.-]+",
"date": "\\d{4}-\\d{2}-\\d{2}"
}
},
"/api/r4/tariff": {
"methods": "GET",
"since": "r4",
"description": "Extract all tariffs",
"apikey": 1
},
"/api/r4/tariff/:id": {
"methods": "GET",
"since": "r4",
"description": "Extract a tariff",
"apikey": 1,
"conditions": {
"id": "\\d+"
}
},
"/api/r4/tariff/:id/:date": {
"methods": "GET",
"since": "r4",
"description": "Extract tariff for a day",
"apikey": 1,
"conditions": {
"id": "\\d+",
"date": "[0-9]{4}-[0-9]{2}-[0-9]{2}"
}
},
"/api/r4/tariff/:id/time/:date(/:to)": {
"methods": "GET",
"since": "r4",
"description": "Extract tariff for a day",
"apikey": 1,
"conditions": {
"id": "\\d+",
"date": "[0-9]{4}-[0-9]{2}-[0-9]{2}",
"to": "[0-9]{4}-[0-9]{2}-[0-9]{2}"
}
},
"/api/r4/translation": {
"methods": "GET",
"since": "r3",
"description": "Extract english texts for translation",
"apikey": 0
},
"/api/r4/tree/:id": {
"methods": "DELETE",
"since": "r4",
"description": "Delete channel from channel tree",
"apikey": 1,
"conditions": {
"id": "\\d+"
}
},
"/api/r4/view": {
"methods": "PUT",
"since": "r3",
"description": "Create chart view data, return slug",
"apikey": 0
},
"/api/r4/view/:slug": {
"methods": "DELETE",
"since": "r3",
"description": "Detele chart view data by slug",
"apikey": 1,
"conditions": {
"slug": "[\\w\\d-]+"
}
},
"/api/r4/views(/:language)": {
"methods": "GET",
"since": "r3",
"description": "Fetch all charts",
"apikey": 0
}
}
r3
"ANY /api/r3/help": {
"since": "v1",
"description": "This help, overview of valid calls"
},
"GET /api/r3/:guid": {
"since": "v2",
"description": "Fetch attributes",
"conditions": {
"guid": "(\\w{4}-){7}\\w{4}"
}
},
"GET /api/r3/:guid/:attribute": {
"since": "v2",
"description": "Fetch single channel attribute",
"conditions": {
"guid": "(\\w{4}-){7}\\w{4}",
"attribute": "\\w+"
}
},
"GET /api/r3/attributes/:guid(/:attribute)": {
"since": "v2",
"description": "Fetch all channel attributes or specific channel attribute",
"conditions": {
"guid": "(\\w{4}-){7}\\w{4}",
"attribute": "\\w+"
}
},
"GET /api/r3/channels": {
"since": "v3",
"description": "Fetch attributes"
},
"GET /api/r3/channel/:guid": {
"since": "v3",
"description": "Fetch single channel attribute",
"conditions": {
"guid": "(\\w{4}-){7}\\w{4}"
}
},
"GET /api/r3/channel/:guid/:attribute": {
"since": "v3",
"description": "Fetch all channel attributes or specific channel attribute",
"conditions": {
"guid": "(\\w{4}-){7}\\w{4}",
"attribute": "\\w+"
}
},
"PUT /api/r3/data/:guid": {
"since": "v2",
"description": "Save a reading value",
"payload": "{\"<data>\":\"<value>\"}",
"conditions": {
"guid": "(\\w{4}-){7}\\w{4}"
}
},
"GET /api/r3/data/:guid(/:p1(/:p2))": {
"since": "v2",
"description": "Read reading values",
"parameters": {
"start": {
"description": "Start timestamp for readout, default today 00:00",
"value": [
"YYYY-mm-dd HH:ii:ss",
"seconds since 1970",
"relative from now, see http://php.net/manual/en/datetime.formats.relative.php",
"sunrise - needs location in config/config.php"
]
},
"end": {
"description": "End timestamp for readout, default today midnight",
"value": [
"YYYY-mm-dd HH:ii:ss",
"seconds since 1970",
"relative from now, see http://php.net/manual/en/datetime.formats.relative.php",
"sunset - needs location in config/config.php"
]
},
"period": {
"description": "Aggregation period, default none",
"value": [
"[0-9.]+minutes",
"[0-9.]+hours",
"[0-9.]+days",
"[0-9.]+weeks",
"[0-9.]+month",
"[0-9.]+quarters",
"[0-9.]+years",
"last",
"readlast",
"all"
]
},
"attributes": {
"description": "Return channel attributes as 1st line",
"value": [
1,
"true"
]
},
"full": {
"description": "Return all data, not only timestamp and value",
"value": [
1,
"true"
]
},
"short": {
"description": "Return data as array, not object",
"value": [
1,
"true"
]
}
},
"conditions": {
"guid": "(\\w{4}-){7}\\w{4}"
}
},
"DELETE /api/r3/data/:guid/:timestamp": {
"since": "v2",
"description": "Delete a reading value",
"conditions": {
"guid": "(\\w{4}-){7}\\w{4}"
}
},
"PUT /api/r3/batch/:guid": {
"since": "v2",
"description": "Save multiple reading values",
"payload": {
"<timestamp>,<value>;...": "Semicolon separated timestamp and value data sets",
"<date time>,<value>;...": "Semicolon separated date time and value data sets",
"<date>,<time>,<value>;...": "Semicolon separated date, time and value data sets"
},
"conditions": {
"guid": "(\\w{4}-){7}\\w{4}"
}
},
"PUT /api/r3/csv/:guid": {
"since": "v2",
"description": "Save multiple reading values",
"payload": {
"<timestamp>;<value>": "Semicolon separated timestamp and value data rows",
"<date time>;<value>": "Semicolon separated date time and value data rows",
"<date>;<time>;<value>": "Semicolon separated date, time and value data rows"
},
"conditions": {
"guid": "(\\w{4}-){7}\\w{4}"
}
},
"PUT /api/r3/log": {
"since": "v2",
"description": "Store new log entry, scope defaults to 'API r2'",
"payload": "{\"scope\":\"...\", \"message\":\"...\"}"
},
"GET /api/r3/log/:id": {
"since": "v2",
"description": "Read a log entry",
"conditions": {
"id": "\\d+"
}
},
"GET /api/r3/log/all(/:page(/:count))": {
"since": "v2",
"description": "Read all log entries, paginated for :page, :count entries"
},
"POST /api/r3/log/:id": {
"since": "v2",
"description": "Update a log entry",
"payload": "{\"scope\":\"...\", \"message\":\"...\"}",
"conditions": {
"id": "\\d+"
}
},
"DELETE /api/r3/log/:id": {
"since": "v2",
"description": "Delete a log entry",
"conditions": {
"id": "\\d+"
}
},
"GET /api/r3/sunrise/(/:date)": {
"since": "v3",
"description": "Get sunrise of day, using configured loaction",
"conditions": {
"date": "\\d{4}-\\d{2}-\\d{2}"
}
},
"GET /api/r3/sunrise/:latitude/:longitude(/:date)": {
"since": "v3",
"description": "Get sunrise for location and day",
"conditions": {
"latitude": "[\\d.-]+",
"longitude": "[\\d.-]+",
"date": "\\d{4}-\\d{2}-\\d{2}"
}
},
"GET /api/r3/sunset/(/:date)": {
"since": "v3",
"description": "Get sunset of day, using configured loaction",
"conditions": {
"date": "\\d{4}-\\d{2}-\\d{2}"
}
},
"GET /api/r3/sunset/:latitude/:longitude(/:date)": {
"since": "v3",
"description": "Get sunset of day",
"conditions": {
"latitude": "[\\d.-]+",
"longitude": "[\\d.-]+",
"date": "\\d{4}-\\d{2}-\\d{2}"
}
},
"GET /api/r3/daylight/(/:offset)": {
"since": "v3",
"description": "Check for daylight for configured location, accept additional minutes before/after",
"conditions": {
"offset": "\\d+"
}
},
"GET /api/r3/daylight/:latitude/:longitude(/:offset)": {
"since": "v3",
"description": "Check for daylight, accept additional minutes before/after",
"conditions": {
"latitude": "[\\d.-]+",
"longitude": "[\\d.-]+",
"offset": "\\d+"
}
},
"GET /api/r3/json/:path+": {
"description": "Extract a section/value from given JSON data from query string",
"payload": "...json/path/to/node/?json=<JSON data>"
},
"POST /api/r3/json/:path+": {
"description": "Extract a section/value from given JSON data sended in request body e.g. from a file"
},
"GET /api/r3/views": {
"since": "v3",
"description": "Fetch chart view data via slug"
},
"PUT /api/r3/view": {
"since": "v3",
"description": "Create chart view data, return slug"
},
"GET /api/r3/view/:slug": {
"since": "v3",
"description": "Fetch chart view data via slug",
"conditions": {
"slug": "[@\\w\\d-]+"
}
},
"POST /api/r3/view/:slug": {
"since": "v3",
"description": "Update chart view data via slug",
"conditions": {
"slug": "[@\\w\\d-]+"
}
},
"DELETE /api/r3/view/:slug": {
"since": "v3",
"description": "Detele chart view data by slug",
"conditions": {
"slug": "[@\\w\\d-]+"
}
},
"GET|POST /api/r3/hash": {
"since": "v3",
"description": "Create MD5 and SHA1 hashes and a slug for the given text",
"parameters": {
"text": {
"description": "Text to make hashes for"
}
}
},
"GET /api/r3/status": {
"since": "v2",
"description": "System status"
},
"GET /api/r3/translation": {
"since": "v3",
"description": "Extract english texts for translation"
}
r2
{
"ANY /api/r2/help": {
"since": "v1",
"description": "This help, overview of valid calls"
},
"GET /api/r2/:guid": {
"since": "v2",
"description": "Fetch attributes"
},
"GET /api/r2/:guid/:attribute": {
"since": "v2",
"description": "Fetch single channel attribute"
},
"GET /api/r2/attributes/:guid(/:attribute)": {
"since": "v2",
"description": "Fetch all channel attributes or specific channel attribute"
},
"PUT /api/r2/data/:guid": {
"since": "v2",
"description": "Save a reading value",
"payload": "{\"data\":\"<value>\"}"
},
"DELETE /api/r2/data/:guid/:timestamp": {
"since": "v2",
"description": "Delete a reading value"
},
"GET /api/r2/data/:guid(/:p1(/:p2))": {
"since": "v2",
"description": "Read reading values",
"parameters": {
"start": {
"description": "Start timestamp for readout, default today 00:00",
"value": [
"YYYY-mm-dd HH:ii:ss",
"seconds since 1970",
"relative from now, see http://php.net/manual/en/datetime.formats.relative.php"
]
},
"end": {
"description": "End timestamp for readout, default today midnight",
"value": [
"YYYY-mm-dd HH:ii:ss",
"seconds since 1970",
"relative from now, see http://php.net/manual/en/datetime.formats.relative.php"
]
},
"period": {
"description": "Aggregation period, default none",
"value": [
"[0-9.]+minutes",
"[0-9.]+hours",
"[0-9.]+days",
"[0-9.]+weeks",
"[0-9.]+month",
"[0-9.]+quarters",
"[0-9.]+years",
"last",
"readlast",
"all"
]
},
"attributes": {
"description": "Return channel attributes as 1st line",
"value": [
1,
"true"
]
},
"full": {
"description": "Return all data, not only timestamp and value",
"value": [
1,
"true"
]
},
"short": {
"description": "Return data as array, not object",
"value": [
1,
"true"
]
}
}
},
"PUT /api/r2/csv/:guid": {
"since": "v2",
"description": "Save multiple reading values",
"payload": {
"<timestamp>;<value>": "Semicolon separated timestamp and value data rows",
"<date time>;<value>": "Semicolon separated date time and value data rows",
"<date>;<time>;<value>": "Semicolon separated date, time and value data rows"
}
},
"PUT /api/r2/batch/:guid": {
"since": "v2",
"description": "Save multiple reading values",
"payload": {
"<timestamp>,<value>;...": "Semicolon separated timestamp and value data sets",
"<date time>,<value>;...": "Semicolon separated date time and value data sets",
"<date>,<time>,<value>;...": "Semicolon separated date, time and value data sets"
}
},
"PUT /api/r2/log": {
"since": "v2",
"description": "Store new log entry, scope defaults to 'API r2'",
"payload": "{\"scope\":\"...\", \"message\":\"...\"}"
},
"GET /api/r2/log/:id": {
"since": "v2",
"description": "Read a log entry"
},
"GET /api/r2/log/all(/:page(/:count))": {
"since": "v2",
"description": "Read all log entries, paginated for :page, :count entries"
},
"POST /api/r2/log/:id": {
"since": "v2",
"description": "Update a log entry",
"payload": "{\"scope\":\"...\", \"message\":\"...\"}"
},
"DELETE /api/r2/log/:id": {
"since": "v2",
"description": "Delete a log entry"
},
"GET /api/r2/status": {
"since": "v2",
"description": "System status"
}
}