This document provides an brief overview of available endpoints and their parameters. The API is a basic REST API. The API accepts JSON as request body (not form data, just plain JSON).
To be able to authenticate to the Eniris API it is required you have an open API account. To login you need a valid email address and password. When the credentials are valid, a web-token will be generated which will then be required for subsequent calls to the api. If the token expires, an error message will be returned, which therefore means you have to request a new token with the original login-credentials.
The base URL of the API is:
https://api.eniris.be/
If you receive an error “Too many requests”, it means that you have exceeded rate limiter limits.
The authentication endpoints include the only endpoints in the API for which no authorization header is required to access them.
POST login
https://api.eniris.be/auth/login
{
"credentials": {
"username": string,
"password": string
}
}
X-Authorization: Bearer {token}
POST logout
https://api.eniris.be/auth/logout
POST user/updatePassword
https://api.eniris.be/user/updatePassword
{
"oldPassword": string,
"newPassword": string,
"refreshSalt": boolean,
"generateToken": boolean
}
GET role/getAll
https://api.eniris.be/role/getAll
POST role/create
https://api.eniris.be/role/create
{
"authRoleId": number,
"role": {name: string, roleManagement: boolean, userManagement: boolean, viewManagement: boolean, accessRightManagement: boolean, deviceManagement: boolean},
"manages": {parentRoleId: number, roleManagement: boolean, userManagement: boolean, viewManagement: boolean, accessRightManagement: boolean, deviceManagement: boolean}
}
POST role/update
https://api.eniris.be/role/update
{
"authRoleId": number,
"role": {name: string, roleManagement: boolean, userManagement: boolean, viewManagement: boolean, accessRightManagement: boolean, deviceManagement: boolean}
}
GET view/getAllWithoutContent
https://api.eniris.be/view/getAllWithoutContent
GET view/get
https://api.eniris.be/view/get
{
"viewId": ""
}
{
"id": "",
"name": "",
"content: ""
}
POST view/create
https://api.eniris.be/view/create
{
"view": {name: string, content: string},
"views": {roleId: number}
}
{
"view": {
"id": "",
"name": "",
"content": ""
},
"views": {
"id": "",
"roleId": "",
"viewId": "",
"viewerManagement": "",
"edits": ""
}
}
POST view/update
https://api.eniris.be/view/update
{
"view": ""
}
{
"id": "",
"name": "",
"content": ""
}
GET device/getAll
https://api.eniris.be/device/getAll
{
"viewId": ""
}
{
"device": Array of devices
}
POST device/create
https://api.eniris.be/device/create
{
"device": any,
"monitors": {"roleId": number, "reads": string[], "edits": string[]}
}
POST device/update
https://api.eniris.be/device/update
{
"device": any
}
GET accessRight/getAll
https://api.eniris.be/accessRight/getAll
POST accessRight/create
https://api.eniris.be/accessRight/create
{
"authRoleId": "",
"accessRight": "",
"allows": ""
}
POST accessRight/update
https://api.eniris.be/accessRight/update
{
"authRoleId": "",
"accessRight": ""
}
GET report/getAll
https://api.eniris.be/report/getAll
{
"viewId": ""
}
POST report/create
https://api.eniris.be/report/create
{
"authRoleId": "",
"report": "",
"reports": ""
}
{
"report": {
"id": "",
"url": "",
"period": "",
"delay": "",
"emails": ""
},
"reports": {
"id": "",
"viewId": "",
"reportId": ""
}
}
POST report/update
https://api.eniris.be/report/update
{
"authRoleId": "",
"report": ""
}
{
"id": "",
"url": "",
"period": "",
"delay": "",
"emails": ""
}
POST report/delete
https://api.eniris.be/report/delete
{
"authRoleId": "",
"report": ""
}
GET memberOf/getAll
https://api.eniris.be/memberOf/getAll
{
"memberOf" :
{"id": "",
"userEmail": "",
"roleId": "",
"expirationTs": ""
}
}
POST memberOf/create
https://api.eniris.be/memberOf/create
{
"memberOf": {"userEmail": string, "roleId": number, "expirationTs": number},
"options": {"layout": string}
}
{
"memberOf" :
{
"id": "",
"userEmail": "",
"roleId": "",
"expirationTs": ""
}
}
POST memberOf/update
https://api.eniris.be/memberOf/update
{
"memberOf": {"id": number, "expirationTs": number}
}
{
"memberOf" :
{
"id": "",
"userEmail": "",
"roleId": "",
"expirationTs": ""
}
}
POST memberOf/delete
https://api.eniris.be/memberOf/delete
{
"memberOf": {"id": number}
}
GET views/getAll
https://api.eniris.be/views/getAll
POST views/create
https://api.eniris.be/views/create
{
"authRoleId": "",
"views": ""
}
POST views/update
https://api.eniris.be/views/update
{
"authRoleId": "",
"views": ""
}
POST views/delete
https://api.eniris.be/views/delete
{
"authRoleId": "",
"views": ""
}
GET manages/getAll
https://api.eniris.be/manages/getAll
POST manages/create
https://api.eniris.be/manages/create
{
"authRoleId": "",
"manages": {
"parentRoleId": number,
"roleManagement": boolean,
"userManagement": boolean,
"viewManagement": boolean,
"accessRightManagement": boolean,
"deviceManagement": boolean
}
}
POST manages/update
https://api.eniris.be/manages/update
{
"authRoleId": "",
"manages": {
"parentRoleId": number,
"roleManagement": boolean,
"userManagement": boolean,
"viewManagement": boolean,
"accessRightManagement": boolean,
"deviceManagement": boolean
}
}
POST manages/delete
https://api.eniris.be/manages/delete
{
"authRoleId": "",
"manages": {
"parentRoleId": number,
"roleManagement": boolean,
"userManagement": boolean,
"viewManagement": boolean,
"accessRightManagement": boolean,
"deviceManagement": boolean
}
}
GET monitors/getAll
https://api.eniris.be/monitors/getAll
POST monitors/create
https://api.eniris.be/monitors/create
{
"authRoleId": "",
"monitors": {roleId: number, reads: string[], edits: string[]}
}
POST monitors/update
https://api.eniris.be/monitors/update
{
"authRoleId": "",
"monitors": {roleId: number, reads: string[], edits: string[]}
}
POST monitors/delete
https://api.eniris.be/monitors/delete
{
"authRoleId": "",
"monitors": {roleId: number, reads: string[], edits: string[]}
}
GET allows/getAll
https://api.eniris.be/allows/getAll
POST allows/create
https://api.eniris.be/allows/create
{
"authRoleId": "",
"allows": ""
}
POST allows/delete
https://api.eniris.be/allows/delete
{
"authRoleId": "",
"allows": ""
}
GET contains/getAll
https://api.eniris.be/contains/getAll
{
"viewId": ""
}
POST contains/create
https://api.eniris.be/contains/create
{
"authRoleId": "",
"contains": ""
}
POST contains/delete
https://api.eniris.be/contains/delete
{
"authRoleId": "",
"contains": ""
}
GET alarm/getAll
https://api.eniris.be/alarm/getAll
{
"viewId": number
}
GET alarm/alarmCreate
https://api.eniris.be/alarmCreate
{
"authRoleId": number,
"alarm": any,
"generates": any
}