HTTP API

 { "swagger": "2.0", "info": { "version": "v2", "title": "2N® Access Commander API", "description": "## Important note\n\nThis documentation file purpose is to help Access Commander development team as a reference manual.\nThis file **IS NOT the official Access Commander API reference manual** and might NOT always reflect the actual\nversion of the API endpoints. If you find any bug please report it to your distributor and he will schedule a\nfix into future releases.\n\n## Address\n\nThe URL of AccessCommander's API is versioned and uses https, i.e. the url looks like `https://serveraddress/api/v2/endpoint`, where:\n\n`serveraddress` is IP address of AC, \n\n`endpoint` - see section Paths.\n\n## HTTP\n\nHttp commands used for communication with the server:\n\n`GET` lists entities (getting the list of entities with parameter values)\n\n`PUT` updates the entity (change of some parameters typically)\n\n`POST` creates a new entity\n\n`DELETE` deletes the entity\n\n## Data Structure\n\n### Server Response\n\nResponse structure:\n\n```json\n{\n \"data\": {\n ...\n }\n}\n```\n\nEvery response is wrapped in the object \"data\". This arrangement offers the advantage of sending metadata in the response, for instance:\n\n```json\n{\n \"meta\": {\n \"code\": 200\n },\n \"data\": {\n ...\n },\n \"pagination\": {\n \"next_url\": \"...\",\n \"next_max_id\": \"13872296\"\n }\n}\n```\n\n### Errors\n`401` unauthorized\n\n`500 and higher` server errors, the structure looks like this:\n\n```json\n{\n \"data\": {\n errornumber:123456\n errortext:\"example\"\n }\n}\n```\n## Authentication\n\nThe user sends a request containing username and password to the endpoint `/login`.\nIf the pair is valid, the server creates the cookie and sends it back to the browser.\nAll consequent requests are sent to the server along with the cookie. The server always verifies\nif the cookie is valid. If it is not, it returns 401 in response. The cookie is deleted by sending \nrequest to the endpoint `/logout`.\n\n## Version Number and Tags\n" }, "basePath": "/api/v2", "schemes": [ "https" ], "consumes": [ "application/json" ], "produces": [ "application/json" ], "tags": [ { "name": "companies", "description": "Company entity" }, { "name": "zones", "description": "Zone entity" }, { "name": "groups", "description": "Group entity" }, { "name": "users", "description": "User entity" }, { "name": "devices", "description": "Device entity" }, { "name": "auth", "description": "Logging in and out" }, { "name": "accessrules", "description": "Access Rule entity" }, { "name": "timeprofiles", "description": "Time Profile entity" }, { "name": "attendance", "description": "Attendance entity" }, { "name": "presence", "description": "Presence entity" }, { "name": "system", "description": "System entity" }, { "name": "notifications", "description": "Notification entity" }, { "name": "days", "description": "Day entity" }, { "name": "intervals", "description": "Interval entity" }, { "name": "ldap", "description": "LdapSettings entity" }, { "name": "snapshots", "description": "Snapshot entity" }, { "name": "eventtypes", "description": "EventType entity" }, { "name": "cards", "description": "Card entity" }, { "name": "visitorcards", "description": "Visitor Card entity" }, { "name": "visitors", "description": "Visitor entity" }, { "name": "synchronization", "description": "Synchronization" }, { "name": "userRight", "description": "Right of ordinary user" }, { "name": "adminRight", "description": "Administrator right" }, { "name": "accessManagerRight", "description": "Right of manager of access" }, { "name": "userManagerRight", "description": "Right of manager of users" }, { "name": "attendanceManagerRight", "description": "Right of manager of attendance" }, { "name": "anonymous", "description": "Login is not required to access the endpoint" }, { "name": "TODO", "description": "Solve before release!" } ], "paths": { "/accessrules": { "get": { "tags": [ "accessrules", "adminRight", "accessManagerRight" ], "description": "Returns a list of Access Rules", "responses": { "200": { "description": "The list of Access Rules", "schema": { "type": "array", "items": { "$ref": "#/definitions/AccessRule" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "tags": [ "accessrules", "adminRight", "accessManagerRight" ], "description": "Creates a new Access Rule", "parameters": [ { "in": "body", "name": "AccessRule", "description": "The object to create the Access Rule from", "required": true, "schema": { "description": "Required from $ref: '#/definitions/AccessRule'", "type": "object", "required": [ "Group", "TimeProfile", "Zone" ], "properties": { "Group": { "$ref": "#/definitions/baseObject" }, "TimeProfile": { "$ref": "#/definitions/baseObject" }, "Zone": { "$ref": "#/definitions/baseObject" } } } } ], "responses": { "200": { "description": "The detail of the created Access Rule", "schema": { "$ref": "#/definitions/AccessRule" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/accessrules/{accessRuleId}": { "get": { "tags": [ "accessrules", "adminRight", "accessManagerRight" ], "description": "Returns a detail of the Access Rule", "parameters": [ { "in": "path", "name": "accessRuleId", "description": "ID of the Access Rule", "required": true, "type": "string" } ], "responses": { "200": { "description": "The detail of the Access Rule", "schema": { "$ref": "#/definitions/AccessRule" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "accessrules", "adminRight", "accessManagerRight" ], "description": "Performs a change of the Access Rule", "parameters": [ { "in": "path", "name": "accessRuleId", "description": "ID of the Access Rule", "required": true, "type": "string" }, { "in": "body", "name": "AccessRule", "description": "The edited AccessRule", "required": true, "schema": { "description": "Required from $ref: '#/definitions/AccessRule'", "type": "object", "required": [ "ModifiedGuid" ], "properties": { "ModifiedGuid": { "$ref": "#/definitions/UUID" } } } } ], "responses": { "200": { "description": "The detail of the Access Rule", "schema": { "$ref": "#/definitions/AccessRule" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "accessrules", "adminRight", "accessManagerRight" ], "description": "Deletes the Access Rule", "parameters": [ { "in": "path", "name": "accessRuleId", "description": "ID of the Access Rule", "required": true, "type": "string" }, { "in": "body", "name": "AccessRule", "description": "The AccessRule to delete", "required": true, "schema": { "description": "Required from $ref: '#/definitions/AccessRule'", "type": "object", "required": [ "ModifiedGuid" ], "properties": { "ModifiedGuid": { "$ref": "#/definitions/UUID" } } } } ], "responses": { "200": { "description": "The Access Rule has been deleted", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/companies": { "get": { "tags": [ "companies", "adminRight", "userRight", "userManagerRight", "accessManagerRight", "attendanceManagerRight" ], "description": "Returns a list of Companies", "responses": { "200": { "description": "The list of Companies", "schema": { "type": "array", "items": { "$ref": "#/definitions/Company" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "tags": [ "companies", "adminRight" ], "description": "Creates a new Company", "parameters": [ { "name": "Company", "in": "body", "description": "The object to create the Company from", "required": true, "schema": { "$ref": "#/definitions/basePOST" } } ], "responses": { "200": { "description": "The detail of the created Company", "schema": { "$ref": "#/definitions/Company" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/companies/validate": { "put": { "tags": [ "TODO", "companies", "adminRight" ], "description": "The validation of Company property Name uniqueness", "parameters": [ { "name": "Company", "in": "body", "description": "The Company to validate", "required": true, "schema": { "$ref": "#/definitions/Company" } } ], "responses": { "200": { "description": "Validation successful" }, "default": { "description": "Validation failed", "schema": { "$ref": "#/definitions/Error" } } } } }, "/companies/{companyId}": { "get": { "tags": [ "companies", "adminRight", "userRight", "userManagerRight", "accessManagerRight", "attendanceManagerRight" ], "description": "Returns a detail of the Company", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" } ], "responses": { "200": { "description": "The detail of the Company", "schema": { "$ref": "#/definitions/Company" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "companies", "adminRight" ], "description": "Performs a change of the Company", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" }, { "in": "body", "name": "Company", "description": "The edited Company", "required": true, "schema": { "$ref": "#/definitions/Company" } } ], "responses": { "200": { "description": "The detail of the Company", "schema": { "$ref": "#/definitions/Company" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "companies", "adminRight" ], "description": "Deletes the Company", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" }, { "in": "body", "name": "Company", "description": "The Company to delete", "required": true, "schema": { "$ref": "#/definitions/Company" } } ], "responses": { "200": { "description": "The company has been deleted", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/companies/{companyId}/attendancesetting": { "put": { "tags": [ "companies", "adminRight" ], "description": "Performs a change of the Attendance Setting of the Company", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" }, { "in": "body", "name": "AttendanceSetting", "description": "The edited AttendanceSetting", "required": true, "schema": { "$ref": "#/definitions/AttendanceSetting" } } ], "responses": { "200": { "description": "The detail of Attendance Setting of the Company", "schema": { "$ref": "#/definitions/AttendanceSetting" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/companies/{companyId}/commonsetting": { "put": { "tags": [ "companies", "adminRight" ], "description": "Performs a change of a Common Setting of the Company", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" }, { "in": "body", "name": "CommonSetting", "description": "The edited CommonSetting", "required": true, "schema": { "$ref": "#/definitions/CommonSetting" } } ], "responses": { "200": { "description": "The detail of the Common Setting of the Company", "schema": { "$ref": "#/definitions/CommonSetting" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/companies/{companyId}/devices": { "get": { "tags": [ "companies", "devices", "adminRight" ], "description": "Returns a list of Devices associated with the Company", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" } ], "responses": { "200": { "description": "The list of Devices associated with the Company", "schema": { "type": "array", "items": { "$ref": "#/definitions/baseObject" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/companies/{companyId}/devices/{deviceId}/importUsers": { "put": { "tags": [ "companies", "devices", "adminRight" ], "description": "Performs the import of users from the Device to the Company", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" }, { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" } ], "responses": { "200": { "description": "The import has been successful", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/companies/{companyId}/groups": { "get": { "tags": [ "companies", "groups", "adminRight" ], "description": "Returns a list of Groups associated with the Company", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" } ], "responses": { "200": { "description": "The list of Groups associated with the Company", "schema": { "type": "array", "items": { "$ref": "#/definitions/GroupBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/companies/{companyId}/users": { "get": { "tags": [ "companies", "adminRight" ], "description": "Returns a list of Users associated with the Company", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" } ], "responses": { "200": { "description": "The list of Users associated with the Company", "schema": { "type": "array", "items": { "$ref": "#/definitions/UserBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/companies/{companyId}/zones": { "get": { "tags": [ "companies", "zones", "adminRight" ], "description": "Returns a list of Zones associated with the Company", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" } ], "responses": { "200": { "description": "The list of Zones associated with the Company", "schema": { "type": "array", "items": { "$ref": "#/definitions/ZoneBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "companies", "zones", "adminRight" ], "description": "Associates the Zone with the Company", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" }, { "in": "body", "name": "Zones", "description": "Zones to add to the Company", "required": true, "schema": { "type": "array", "items": { "$ref": "#/definitions/baseObject" } } } ], "responses": { "200": { "description": "The list of Zones associated with the Company", "schema": { "type": "array", "items": { "$ref": "#/definitions/ZoneBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "companies", "zones", "adminRight" ], "description": "Dissociates the Zone from the Company", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" }, { "in": "body", "name": "Zones", "description": "Zones to remove from the Company", "required": true, "schema": { "type": "array", "items": { "$ref": "#/definitions/baseObject" } } } ], "responses": { "200": { "description": "The list of Zones associated with the Company", "schema": { "type": "array", "items": { "$ref": "#/definitions/ZoneBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/companies/{companyId}/holidays": { "get": { "tags": [ "companies", "adminRight" ], "description": "Returns a list of Holidays observed by the Company", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" } ], "responses": { "200": { "description": "The list of Holidays observed by the Company", "schema": { "type": "array", "items": { "$ref": "#/definitions/Holiday" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "tags": [ "companies", "adminRight" ], "description": "Creates a new Holiday", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" }, { "in": "body", "name": "Holiday", "description": "The object to create the Holiday from. If the property Year is null, it means that it is valid any year.", "required": true, "schema": { "$ref": "#/definitions/Holiday" } } ], "responses": { "200": { "description": "The detail of the created Holiday", "schema": { "$ref": "#/definitions/Holiday" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/companies/{companyId}/holidays/{holidayId}": { "get": { "tags": [ "companies", "adminRight" ], "description": "Returns a detail of the Holiday", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" }, { "in": "path", "name": "holidayId", "description": "ID of the Holiday", "required": true, "type": "integer" } ], "responses": { "200": { "description": "The detail of the Holiday", "schema": { "$ref": "#/definitions/Holiday" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "companies", "adminRight" ], "description": "Performs a change of the Holiday", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" }, { "in": "path", "name": "holidayId", "description": "ID of the Holiday", "required": true, "type": "integer" }, { "in": "body", "name": "Holiday", "description": "The edited Holiday. If the property Year is null, it means that it is valid any year.", "required": true, "schema": { "$ref": "#/definitions/Holiday" } } ], "responses": { "200": { "description": "The detail of the Holiday", "schema": { "$ref": "#/definitions/Holiday" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "companies", "adminRight" ], "description": "Deletes the Holiday", "parameters": [ { "in": "path", "type": "integer", "name": "companyId", "description": "ID of the Company", "required": true }, { "in": "path", "type": "integer", "name": "holidayId", "description": "ID of the Holiday", "required": true }, { "in": "body", "name": "Holiday", "description": "The Holiday to delete", "required": true, "schema": { "$ref": "#/definitions/Holiday" } } ], "responses": { "200": { "description": "The Holiday has been deleted", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/companies/{companyId}/holidays/copy": { "put": { "tags": [ "companies", "adminRight" ], "description": "Performs copying of the Holiday from another Company", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the target Company", "required": true, "type": "string" }, { "in": "body", "name": "Company", "description": "the source Company", "required": true, "schema": { "$ref": "#/definitions/baseObjectId" } } ], "responses": { "200": { "description": "The detail of the Holiday", "schema": { "type": "array", "items": { "$ref": "#/definitions/Holiday" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/companies/{companyId}/import.hproj": { "put": { "tags": [ "companies", "adminRight" ], "description": "Performs the import of HPROJ data to the Company", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" }, { "in": "body", "name": "file", "description": "data", "required": true, "schema": { "type": "string", "format": "file-hproj" } } ], "responses": { "200": { "description": "The HPROJ data has been imported to the Company", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/companies/{companyId}/import.csv": { "put": { "tags": [ "companies", "adminRight" ], "description": "Performs the import of CSV data to the Company", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" }, { "in": "body", "name": "file", "description": "data", "required": true, "schema": { "type": "string", "format": "file-csv" } } ], "responses": { "200": { "description": "The CSV data has been imported to the Company", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/companies/{companyId}/ldap": { "get": { "tags": [ "companies", "ldap", "adminRight" ], "description": "Returns the list of LDAP settings associated with the Company", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" } ], "responses": { "200": { "description": "The list of LDAP settings associated with the Company", "schema": { "type": "array", "items": { "$ref": "#/definitions/LdapSettings" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "tags": [ "companies", "ldap", "adminRight" ], "description": "Creates a new LDAP settings associated with the company", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" }, { "in": "body", "name": "LdapSettings", "description": "The object to create the LDAP settings from", "required": true, "schema": { "$ref": "#/definitions/LdapSettings" } } ], "responses": { "200": { "description": "Created LDAP settings", "schema": { "$ref": "#/definitions/LdapSettings" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/companies/{companyId}/ldap/{settingId}": { "get": { "tags": [ "companies", "ldap", "adminRight" ], "description": "Returns LDAP settings", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" }, { "in": "path", "name": "settingId", "description": "ID of the LDAP settings", "required": true, "type": "integer" } ], "responses": { "200": { "description": "The detail of the LDAP settings", "schema": { "$ref": "#/definitions/LdapSettings" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "companies", "ldap", "adminRight" ], "description": "Performs a change of the LDAP settings", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" }, { "in": "path", "name": "settingId", "description": "ID of the LDAP settings", "required": true, "type": "integer" }, { "in": "body", "name": "LdapSettings", "description": "The edited LDAP settings", "required": true, "schema": { "$ref": "#/definitions/LdapSettings" } } ], "responses": { "200": { "description": "The detail of the", "schema": { "$ref": "#/definitions/LdapSettings" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "companies", "ldap", "adminRight" ], "description": "Removes the LDAP settings from the Company", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" }, { "in": "path", "name": "settingId", "description": "ID of the LDAP settings", "required": true, "type": "integer" }, { "in": "body", "name": "LdapSettings", "description": "The edited LDAP settings", "required": true, "schema": { "$ref": "#/definitions/LdapSettings" } } ], "responses": { "200": { "description": "The LDAP settings has been deleted", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/companies/{companyId}/ldap/{settingId}/synchronize": { "get": { "tags": [ "companies", "ldap", "adminRight" ], "description": "Returns the status of LDAP synchronization", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" }, { "in": "path", "name": "settingId", "description": "ID of the LDAP settings", "required": true, "type": "integer" } ], "responses": { "200": { "description": "The status of LDAP synchronization", "schema": { "$ref": "#/definitions/LdapStatus" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "companies", "ldap", "adminRight" ], "description": "Performs LDAP synchronization", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" }, { "in": "path", "name": "settingId", "description": "ID of the LDAP settings", "required": true, "type": "integer" } ], "responses": { "200": { "description": "LDAP synchronization has been started", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/companies/{companyId}/ldap/test": { "put": { "tags": [ "companies", "ldap", "adminRight" ], "description": "Performs LDAP test", "parameters": [ { "in": "path", "name": "companyId", "description": "ID of the Company", "required": true, "type": "integer" }, { "in": "body", "name": "LdapSettings", "description": "The edited LDAP settings", "required": true, "schema": { "$ref": "#/definitions/LdapSettings" } } ], "responses": { "200": { "description": "The LDAP test has been successfuly completed", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/dashboard/info": { "get": { "description": "Info for the Dashboard", "responses": { "200": { "description": "Info for the Dashboard", "schema": { "$ref": "#/definitions/DashboardInfo" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/devices": { "get": { "tags": [ "devices", "adminRight" ], "description": "Returns a list of Devices", "responses": { "200": { "description": "The list of Devices", "schema": { "type": "array", "items": { "$ref": "#/definitions/Device" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "tags": [ "devices", "adminRight" ], "description": "Creates new Devices. It is possible to send an array to create multiple Devices (as described below) or also an only object to create the only Device from", "parameters": [ { "in": "body", "name": "Devices", "description": "the array of objects to create Devices from", "required": true, "schema": { "type": "array", "items": { "$ref": "#/definitions/Device" } } } ], "responses": { "200": { "description": "The list of Devices", "schema": { "type": "array", "items": { "$ref": "#/definitions/Device" } } }, "default": { "description": "unauthorized", "schema": { "$ref": "#/definitions/Error" } } } } }, "/devices/scannetwork": { "get": { "tags": [ "devices", "adminRight" ], "description": "Returns a list of Devices found in the network", "responses": { "200": { "description": "The list of Devices found in the network", "schema": { "type": "array", "items": { "$ref": "#/definitions/DeviceScan" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/devices/password": { "put": { "tags": [ "devices", "adminRight" ], "description": "Returns a new strong Password", "responses": { "200": { "description": "Returns a new strong Password", "schema": { "type": "array", "items": { "$ref": "#/definitions/DevicePassword" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/devices/{deviceId}": { "get": { "tags": [ "devices", "adminRight" ], "description": "Returns a detail of the Device", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" } ], "responses": { "200": { "description": "The detail of the Device", "schema": { "$ref": "#/definitions/Device" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "devices", "adminRight" ], "description": "Performs a change of the Device", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" }, { "in": "body", "name": "Device", "description": "The edited Device", "required": true, "schema": { "description": "From $ref: '#/definitions/Device'", "type": "object", "required": [ "ModifiedGuid" ], "properties": { "ModifiedGuid": { "$ref": "#/definitions/UUID" } } } } ], "responses": { "200": { "description": "The detail of the Device", "schema": { "type": "object", "properties": { "data": { "$ref": "#/definitions/Device" } } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "devices", "adminRight" ], "description": "Deletes the Device", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" }, { "in": "body", "name": "Device", "description": "The Device to delete", "required": true, "schema": { "description": "From $ref: '#/definitions/Device'", "type": "object", "required": [ "ModifiedGuid" ], "properties": { "ModifiedGuid": { "$ref": "#/definitions/UUID" } } } } ], "responses": { "200": { "description": "The Device has been deleted", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/devices/{deviceId}/buttons": { "get": { "tags": [ "devices", "adminRight" ], "description": "Returns a list of Device's buttons", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" } ], "responses": { "200": { "description": "The list of Device's buttons", "schema": { "type": "array", "items": { "$ref": "#/definitions/Button" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "tags": [ "devices", "adminRight" ], "description": "Creates a new Button", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" }, { "in": "body", "name": "Button", "description": "The object to create the Button from", "required": true, "schema": { "description": "From $ref: '#/definitions/Button'", "type": "object", "required": [ "Button", "User" ], "properties": { "Button": { "type": "integer" }, "User": { "$ref": "#/definitions/baseObject" } } } } ], "responses": { "200": { "description": "The Detail of the created Button", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/devices/{deviceId}/buttons/{buttonId}": { "get": { "tags": [ "devices", "adminRight" ], "description": "Returns a detail of the Button", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" }, { "in": "path", "name": "buttonId", "description": "ID of the Button", "required": true, "type": "string" } ], "responses": { "200": { "description": "The detail of the Button", "schema": { "$ref": "#/definitions/Button" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "devices", "adminRight" ], "description": "Performs a change of the Button", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" }, { "in": "path", "name": "buttonId", "description": "ID of the Button", "required": true, "type": "string" }, { "in": "body", "name": "Button", "description": "The edited Button", "required": true, "schema": { "$ref": "#/definitions/Button" } } ], "responses": { "200": { "description": "The detail of the Button", "schema": { "$ref": "#/definitions/Button" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "devices", "adminRight" ], "description": "Deletes the Button associated with the Device", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" }, { "in": "path", "name": "buttonId", "description": "ID of the Button", "required": true, "type": "string" }, { "in": "body", "name": "Button", "description": "The Button to delete", "required": true, "schema": { "description": "From $ref: '#/definitions/Button'", "type": "object", "required": [ "Button", "Id", "User", "ModifiedGuid" ], "properties": { "Button": { "type": "integer" }, "Id": { "type": "integer" }, "ModifiedGuid": { "$ref": "#/definitions/UUID" }, "User": { "$ref": "#/definitions/baseObject" } } } } ], "responses": { "200": { "description": "The Button has been deleted", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/devices/{deviceId}/keypad": { "get": { "tags": [ "devices", "adminRight" ], "description": "Returns a list of Quick Dial Buttons", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" } ], "responses": { "200": { "description": "The list of Quick Dial Buttons", "schema": { "type": "array", "items": { "$ref": "#/definitions/Keypad" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "tags": [ "devices", "adminRight" ], "description": "Assigns new Quick Dial Button", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" }, { "in": "body", "name": "Keypad", "description": "The object to create the Quick Dial Button from", "required": true, "schema": { "description": "Required from $ref: '#/definitions/Keypad'", "type": "object", "required": [ "Device", "User", "VirtualNumber" ], "properties": { "Device": { "$ref": "#/definitions/baseObjectId" }, "User": { "$ref": "#/definitions/baseObjectId" }, "VirtualNumber": { "type": "string" } } } } ], "responses": { "200": { "description": "The detail of Quick Dial Button", "schema": { "$ref": "#/definitions/Keypad" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/devices/{deviceId}/keypad/{keypadId}": { "get": { "tags": [ "devices", "adminRight" ], "description": "Returns a detail of the Quick Dial Button", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" }, { "in": "path", "name": "keypadId", "description": "ID of the Quick Dial Button", "required": true, "type": "string" } ], "responses": { "200": { "description": "The detail of the Quick Dial Button", "schema": { "$ref": "#/definitions/Keypad" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "devices", "adminRight" ], "description": "Performs a change of the Quick Dial Button", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" }, { "in": "path", "name": "keypadId", "description": "ID of the Quick Dial Button", "required": true, "type": "string" }, { "in": "body", "name": "Keypad", "description": "The edited Quick Dial Button", "required": true, "schema": { "description": "Required from $ref: '#/definitions/Keypad'", "type": "object", "required": [ "ModifiedGuid" ], "properties": { "ModifiedGuid": { "$ref": "#/definitions/UUID" } } } } ], "responses": { "200": { "description": "The detail of the Quick Dial Button", "schema": { "$ref": "#/definitions/Keypad" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "devices", "adminRight" ], "description": "Deletes the Quick Dial Button", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" }, { "in": "path", "name": "keypadId", "description": "ID of the Quick Dial Button", "required": true, "type": "string" }, { "in": "body", "name": "Keypad", "description": "The Quick Dial Button to delete", "required": true, "schema": { "description": "Required from $ref: '#/definitions/Keypad'", "type": "object", "required": [ "ModifiedGuid" ], "properties": { "ModifiedGuid": { "$ref": "#/definitions/UUID" } } } } ], "responses": { "200": { "description": "The Quick Dial Button has been deleted", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/devices/{deviceId}/display/nametags": { "get": { "tags": [ "devices", "adminRight" ], "description": "Returns a list of Display Buttons", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" } ], "responses": { "200": { "description": "The list of Display Buttons", "schema": { "$ref": "#/definitions/DisplayNameTags" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "devices", "adminRight" ], "description": "Performs a change of Display Buttons", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" }, { "in": "body", "name": "DisplayNameTags", "description": "The edited DisplayButtons", "required": true, "schema": { "$ref": "#/definitions/DisplayNameTags" } } ], "responses": { "200": { "description": "The list of Display Buttons", "schema": { "$ref": "#/definitions/DisplayNameTags" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/devices/{deviceId}/display/phonebook": { "get": { "tags": [ "devices", "adminRight" ], "description": "Returns the configuration for the Display Phonebook", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" } ], "responses": { "200": { "description": "Returns the configuration for the Display Phonebook", "schema": { "$ref": "#/definitions/DisplayPhonebook" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "devices", "adminRight" ], "description": "Performs a change the configuration for Display Phonebook", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" }, { "in": "body", "name": "DisplayPhonebook", "description": "The edited Display Phonebook", "required": true, "schema": { "$ref": "#/definitions/DisplayPhonebook" } } ], "responses": { "200": { "description": "Returns the configuration for the Display Phonebook", "schema": { "$ref": "#/definitions/DisplayPhonebook" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/devices/backup": { "put": { "tags": [ "devices", "adminRight" ], "description": "Launches bulk Backup of selected Devices", "parameters": [ { "in": "body", "name": "Devices", "description": "Devices to Backup", "required": true, "schema": { "type": "array", "items": { "$ref": "#/definitions/baseObjectId" } } } ], "responses": { "200": { "description": "The bulk backup of Devices has been started", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/devices/{deviceId}/backup": { "get": { "tags": [ "devices", "adminRight" ], "description": "Returns the State of Backup of the Device", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "integer" } ], "responses": { "200": { "description": "Returns the State of Backup of the Device", "schema": { "type": "array", "items": { "$ref": "#/definitions/BackupBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "devices", "adminRight" ], "description": "Launches the Backup of the Device", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" } ], "responses": { "200": { "description": "Returns the State of Backup of the Device", "schema": { "$ref": "#/definitions/baseState" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/devices/{deviceId}/backup/download": { "get": { "tags": [ "devices", "adminRight" ], "description": "Returns the file containing Backup of the Device", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "integer" } ], "responses": { "200": { "description": "Returns the file containing Backup of the Device", "schema": { "type": "string", "format": "XML" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/devices/{deviceId}/restore": { "put": { "tags": [ "devices", "adminRight" ], "description": "Restores the Device using the Backup", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "integer" } ], "responses": { "200": { "description": "Returns the State of Backup of the Device", "schema": { "$ref": "#/definitions/baseState" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/devices/{deviceId}/restore/{backupId}": { "put": { "tags": [ "devices", "adminRight" ], "description": "Restores the selected Device using the Backup", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "integer" }, { "in": "path", "name": "backupId", "description": "ID of the Backup", "required": true, "type": "integer" } ], "responses": { "200": { "description": "Returns the State of Backup of the Device", "schema": { "$ref": "#/definitions/baseState" } }, "default": { "description": "Server Error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/devices/{deviceId}/copyconfig": { "get": { "tags": [ "devices", "adminRight" ], "description": "Returns a list of names of parts of configuration XML to choose from", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" } ], "responses": { "200": { "description": "The list of names of parts of configuration XML to choose from", "schema": { "$ref": "#/definitions/CopyConfigItems" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "devices", "adminRight" ], "description": "Performs copying of settings from one Device to others", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of source Device", "required": true, "type": "string" }, { "in": "body", "name": "data", "description": "The object containing the list of Serial Numbers of target devices and the list of names of selected parts of configuration XML to be copied to them", "required": true, "schema": { "$ref": "#/definitions/CopyConfig" } } ], "responses": { "200": { "description": "The copying of settings has been done", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/devices/{deviceId}/synchronize": { "get": { "tags": [ "devices", "adminRight" ], "description": "Returns the State of synchronization", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" } ], "responses": { "200": { "description": "Returns the State of synchronization", "schema": { "$ref": "#/definitions/baseState" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "devices", "adminRight" ], "description": "Launches the synchronization of the Device", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" } ], "responses": { "200": { "description": "Returns the State of synchronization", "schema": { "$ref": "#/definitions/baseState" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/devices/{deviceId}/proxy": { "get": { "tags": [ "devices", "adminRight" ], "description": "Returns an HTML response of logged-in Device", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" } ], "responses": { "200": { "description": "Returns an HTML response of logged-in Device", "schema": { "type": "string", "format": "HTML" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/devices/status": { "get": { "tags": [ "devices", "adminRight" ], "description": "Returns Status of Devices", "responses": { "200": { "description": "Returns Status of Devices", "schema": { "type": "array", "items": { "$ref": "#/definitions/DeviceStatus" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/devices/{deviceId}/password": { "get": { "tags": [ "devices", "adminRight" ], "description": "Returns the Device Password", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" } ], "responses": { "200": { "description": "Returns the Device Password", "schema": { "$ref": "#/definitions/DevicePassword" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/devices/{deviceId}/password/generate": { "put": { "tags": [ "devices", "adminRight" ], "description": "Generates and sets the strong Device Password", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" } ], "responses": { "200": { "description": "Returns the Device", "schema": { "$ref": "#/definitions/Device" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/devices/{deviceId}/import": { "put": { "tags": [ "devices", "adminRight" ], "description": "Launches import of users from the Device to the System", "parameters": [ { "in": "path", "name": "deviceId", "description": "ID of the Device", "required": true, "type": "string" } ], "responses": { "200": { "description": "The import has been successful", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/groups": { "get": { "tags": [ "groups", "adminRight", "accessManagerRight", "userManagerRight" ], "description": "Returns a list of Groups", "responses": { "200": { "description": "The list of Groups", "schema": { "type": "array", "items": { "$ref": "#/definitions/Group" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "tags": [ "groups", "adminRight", "accessManagerRight", "userManagerRight" ], "description": "Creates a new Group", "parameters": [ { "in": "body", "name": "Group", "description": "The object to create the Group from", "required": true, "schema": { "$ref": "#/definitions/basePOSTwithCompany" } } ], "responses": { "200": { "description": "The detail of the created Group", "schema": { "$ref": "#/definitions/Group" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/groups/validate": { "put": { "tags": [ "TODO", "groups", "adminRight", "accessManagerRight", "userManagerRight" ], "description": "The validation of Group property Name uniqueness", "parameters": [ { "name": "Group", "in": "body", "description": "The Group to validate", "required": true, "schema": { "$ref": "#/definitions/Group" } } ], "responses": { "200": { "description": "Validation successful" }, "default": { "description": "Validation failed", "schema": { "$ref": "#/definitions/Error" } } } } }, "/groups/{groupId}": { "get": { "tags": [ "groups", "adminRight", "accessManagerRight", "userManagerRight" ], "description": "Returns a detail of the Group", "parameters": [ { "in": "path", "name": "groupId", "description": "ID of the Group", "required": true, "type": "string" } ], "responses": { "200": { "description": "The detail of the Group", "schema": { "$ref": "#/definitions/Group" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "groups", "adminRight", "userManagerRight" ], "description": "Performs a change of the Group", "parameters": [ { "in": "path", "name": "groupId", "description": "ID of the Group", "required": true, "type": "string" }, { "in": "body", "name": "Group", "description": "The edited Group", "required": true, "schema": { "$ref": "#/definitions/Group" } } ], "responses": { "200": { "description": "The detail of the Group", "schema": { "$ref": "#/definitions/Group" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "groups", "adminRight", "userManagerRight" ], "description": "Deletes the Group", "parameters": [ { "in": "path", "name": "groupId", "description": "ID of the Group", "required": true, "type": "string" }, { "in": "body", "name": "Group", "description": "The Group to delete", "required": true, "schema": { "$ref": "#/definitions/Group" } } ], "responses": { "200": { "description": "The Group has been deleted", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/groups/{groupId}/users": { "get": { "tags": [ "groups", "users", "adminRight", "accessManagerRight", "userManagerRight" ], "description": "Returns a list of Users in the Group", "parameters": [ { "in": "path", "name": "groupId", "description": "ID of the Group", "required": true, "type": "string" } ], "responses": { "200": { "description": "The list of Users in the Group", "schema": { "type": "array", "items": { "$ref": "#/definitions/UserBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "groups", "users", "adminRight", "userManagerRight" ], "description": "Adds Users to the Group", "parameters": [ { "in": "path", "name": "groupId", "description": "ID of the Group", "required": true, "type": "string" }, { "in": "body", "name": "Users", "description": "The list of Users to add", "required": true, "schema": { "$ref": "#/definitions/baseListId" } } ], "responses": { "200": { "description": "The list of Users in the Group", "schema": { "$ref": "#/definitions/UserBase" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "groups", "users", "adminRight", "userManagerRight" ], "description": "Removes Users from the Group", "parameters": [ { "in": "path", "name": "groupId", "description": "ID of the Group", "required": true, "type": "string" }, { "in": "body", "name": "Users", "description": "The list of Users to remove", "required": true, "schema": { "$ref": "#/definitions/baseListId" } } ], "responses": { "200": { "description": "The list of Users in the Group", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/groups/{groupId}/visitorcards": { "get": { "tags": [ "groups", "visitorcards", "adminRight", "accessManagerRight" ], "description": "Returns a list of Visitors in the Group", "parameters": [ { "in": "path", "name": "groupId", "description": "ID of the Group", "required": true, "type": "string" } ], "responses": { "200": { "description": "The list of Visitors in the Group", "schema": { "type": "array", "items": { "$ref": "#/definitions/UserBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "groups", "visitorcards", "adminRight", "accessManagerRight" ], "description": "Adds Visitors to the Group", "parameters": [ { "in": "path", "name": "groupId", "description": "ID of the Group", "required": true, "type": "string" }, { "in": "body", "name": "Users", "description": "The list of Visitors to add", "required": true, "schema": { "$ref": "#/definitions/baseListId" } } ], "responses": { "200": { "description": "The list of Visitors in the Group", "schema": { "$ref": "#/definitions/UserBase" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "groups", "visitorcards", "adminRight", "accessManagerRight" ], "description": "Removes Visitors from the Group", "parameters": [ { "in": "path", "name": "groupId", "description": "ID of the Group", "required": true, "type": "string" }, { "in": "body", "name": "Users", "description": "The list of Visitors to remove", "required": true, "schema": { "$ref": "#/definitions/baseListId" } } ], "responses": { "200": { "description": "The list of Visitors in the Group", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/groups/{groupId}/zones": { "get": { "tags": [ "groups", "zones", "adminRight", "accessManagerRight", "userManagerRight" ], "description": "Returns a list of Zones associated with the Group", "parameters": [ { "in": "path", "name": "groupId", "description": "ID of the Group", "required": true, "type": "string" } ], "responses": { "200": { "description": "The list of Zones associated with the Group", "schema": { "type": "array", "items": { "$ref": "#/definitions/ZoneBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/login": { "get": { "tags": [ "auth", "userRight" ], "description": "Returns the common info for the logged-in User", "responses": { "200": { "description": "Returns the common info for the logged-in User", "schema": { "$ref": "#/definitions/LoginInfo" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "auth", "anonymous" ], "description": "Logs in the User", "parameters": [ { "in": "body", "name": "UserLogin", "description": "The object carrying the log-in information", "required": true, "schema": { "type": "object", "properties": { "login": { "type": "string" }, "password": { "type": "string" }, "persist": { "type": "boolean" }, "sendNewPassword": { "type": "boolean" } } } } ], "responses": { "200": { "description": "Returns the common info for the logged-in User", "schema": { "$ref": "#/definitions/LoginInfo" } }, "423": { "description": "After 5 subsequent unsuccessful login attempts", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/logout": { "put": { "tags": [ "auth", "userRight" ], "description": "Logs out the User", "responses": { "200": { "description": "The User has been logged out", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/notifications": { "get": { "tags": [ "notifications", "adminRight", "userRight" ], "description": "Returns a list of Notifications", "responses": { "200": { "description": "The list of Notifications", "schema": { "type": "array", "items": { "$ref": "#/definitions/Notification" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "tags": [ "notifications", "adminRight", "userRight" ], "description": "Creates a new Notification", "parameters": [ { "in": "body", "name": "Notification", "description": "The object to create the Notification from", "required": true, "schema": { "$ref": "#/definitions/basePOST" } } ], "responses": { "200": { "description": "The detail of the created Notification", "schema": { "$ref": "#/definitions/Notification" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/notifications/validate": { "put": { "tags": [ "notifications", "adminRight", "userRight" ], "description": "The validation of Notification property Name uniqueness", "parameters": [ { "in": "body", "name": "Notification", "description": "The Notification to validate", "required": true, "schema": { "$ref": "#/definitions/Notification" } } ], "responses": { "200": { "description": "Validation successful" }, "default": { "description": "Validation failed", "schema": { "$ref": "#/definitions/Error" } } } } }, "/notifications/types": { "get": { "tags": [ "notifications", "adminRight", "userRight" ], "description": "Returns a list of notification types", "responses": { "200": { "description": "The list of notification types", "schema": { "type": "array", "items": { "type": "string" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/notifications/{notificationId}": { "get": { "tags": [ "notifications", "adminRight", "userRight" ], "description": "Returns a detail of the Notification", "parameters": [ { "in": "path", "name": "notificationId", "description": "ID of the Notification", "required": true, "type": "string" } ], "responses": { "200": { "description": "The detail of the Notification", "schema": { "$ref": "#/definitions/Notification" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "notifications", "adminRight", "userRight" ], "description": "Performs a change of the Notification", "parameters": [ { "in": "path", "name": "notificationId", "description": "ID of the Notification", "required": true, "type": "string" }, { "in": "body", "name": "Notification", "description": "The edited Notification", "required": true, "schema": { "$ref": "#/definitions/Notification" } } ], "responses": { "200": { "description": "The detail of the Notification", "schema": { "$ref": "#/definitions/Notification" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "notifications", "adminRight", "userRight" ], "description": "Deletes the Notification", "parameters": [ { "in": "path", "name": "notificationId", "description": "ID of the Notification", "required": true, "type": "string" }, { "in": "body", "name": "Notification", "description": "The Notification to delete", "required": true, "schema": { "$ref": "#/definitions/Notification" } } ], "responses": { "200": { "description": "The Notification has been deleted", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/notifications/{notificationId}/users": { "get": { "tags": [ "notifications", "users", "adminRight", "userRight" ], "description": "Returns a list of Users to be notified by the Notification", "parameters": [ { "in": "path", "name": "notificationId", "description": "ID of the Notification", "required": true, "type": "string" } ], "responses": { "200": { "description": "The list of Users to be notified by the Notification", "schema": { "type": "array", "items": { "$ref": "#/definitions/UserBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "notifications", "users", "adminRight", "userRight" ], "description": "Adds Users to be notified by the Notification", "parameters": [ { "in": "path", "name": "notificationId", "description": "ID of the Notification", "required": true, "type": "string" }, { "in": "body", "name": "Users", "description": "Users to be added to the Notification", "required": true, "schema": { "$ref": "#/definitions/baseListId" } } ], "responses": { "200": { "description": "The list of Users to be notified by the Notification", "schema": { "type": "array", "items": { "$ref": "#/definitions/UserBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "notifications", "users", "adminRight", "userRight" ], "description": "Removes Users to be not notified by the Notification", "parameters": [ { "in": "path", "name": "notificationId", "description": "ID of the Notification", "required": true, "type": "string" }, { "in": "body", "name": "Users", "description": "Users to be removed from the Notification", "required": true, "schema": { "$ref": "#/definitions/baseListId" } } ], "responses": { "200": { "description": "The list of Users to be notified by the Notification", "schema": { "type": "array", "items": { "$ref": "#/definitions/UserBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/notifications/{notificationId}/devices": { "get": { "tags": [ "notifications", "devices", "adminRight", "userRight" ], "description": "Returns a list of Devices associated with the Notification", "parameters": [ { "in": "path", "name": "notificationId", "description": "ID of the Notification", "required": true, "type": "string" } ], "responses": { "200": { "description": "The list of Devices associated with the Notification", "schema": { "type": "array", "items": { "$ref": "#/definitions/DeviceBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "notifications", "devices", "adminRight", "userRight" ], "description": "Adds Devices to the Notification", "parameters": [ { "in": "path", "name": "notificationId", "description": "ID of the Notification", "required": true, "type": "string" }, { "in": "body", "name": "Devices", "description": "Devices to be added to the Notification", "required": true, "schema": { "$ref": "#/definitions/baseListId" } } ], "responses": { "200": { "description": "The list of Devices associated with the Notification", "schema": { "type": "array", "items": { "$ref": "#/definitions/DeviceBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "notifications", "devices", "adminRight", "userRight" ], "description": "Removes Devices from the Notification", "parameters": [ { "in": "path", "name": "notificationId", "description": "ID of the Notification", "required": true, "type": "string" }, { "in": "body", "name": "Devices", "description": "Devices to be removed from the Notification", "required": true, "schema": { "$ref": "#/definitions/baseListId" } } ], "responses": { "200": { "description": "The list of Devices associated with the Notification", "schema": { "type": "array", "items": { "$ref": "#/definitions/DeviceBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/snapshots/setting": { "get": { "tags": [ "snapshots", "adminRight" ], "description": "Returns a list of Snapshot's settings", "responses": { "200": { "description": "The list of Snapshot's settings", "schema": { "type": "array", "items": { "$ref": "#/definitions/SnapshotSetting" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "tags": [ "snapshots", "adminRight" ], "description": "Creates a new Snapshot's settings", "parameters": [ { "in": "body", "name": "Snapshot's settings", "description": "The object to create the Snapshot's settings from", "required": true, "schema": { "$ref": "#/definitions/basePOST" } } ], "responses": { "200": { "description": "The detail of the created Snapshot's settings", "schema": { "$ref": "#/definitions/SnapshotSetting" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/snapshots/setting/{settingId}": { "get": { "tags": [ "snapshots", "adminRight" ], "description": "Returns a detail of the Snapshot's settings", "parameters": [ { "in": "path", "name": "settingId", "description": "ID of the Snapshot's settings", "required": true, "type": "string" } ], "responses": { "200": { "description": "The detail of the Snapshot's settings", "schema": { "$ref": "#/definitions/SnapshotSetting" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "snapshots", "adminRight" ], "description": "Performs a change of the Snapshot's settings", "parameters": [ { "in": "path", "name": "settingId", "description": "ID of the Snapshot's settings", "required": true, "type": "string" }, { "in": "body", "name": "Snapshot's settings", "description": "The edited Snapshot's settings", "required": true, "schema": { "$ref": "#/definitions/SnapshotSetting" } } ], "responses": { "200": { "description": "The detail of the Snapshot's settings", "schema": { "$ref": "#/definitions/SnapshotSetting" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "snapshots", "adminRight" ], "description": "Deletes the Snapshot's settings", "parameters": [ { "in": "path", "name": "settingId", "description": "ID of the Snapshot's settings", "required": true, "type": "string" }, { "in": "body", "name": "Snapshot's settings", "description": "The Snapshot's settings to delete", "required": true, "schema": { "$ref": "#/definitions/SnapshotSetting" } } ], "responses": { "200": { "description": "The Snapshot's settings has been deleted", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/snapshots/setting/{settingId}/devices": { "get": { "tags": [ "snapshots", "devices", "adminRight", "userRight" ], "description": "Returns a list of Devices associated with the Snapshot's settings", "parameters": [ { "in": "path", "name": "settingId", "description": "ID of the Snapshot's settings", "required": true, "type": "string" } ], "responses": { "200": { "description": "The list of Devices associated with the Snapshot's settings", "schema": { "type": "array", "items": { "$ref": "#/definitions/DeviceBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "snapshots", "devices", "adminRight", "userRight" ], "description": "Adds Devices to the Snapshot's settings", "parameters": [ { "in": "path", "name": "settingId", "description": "ID of the Snapshot's settings", "required": true, "type": "string" }, { "in": "body", "name": "Devices", "description": "Devices to be added to the Snapshot's settings", "required": true, "schema": { "$ref": "#/definitions/baseListId" } } ], "responses": { "200": { "description": "The list of Devices associated with the Snapshot's settings", "schema": { "type": "array", "items": { "$ref": "#/definitions/DeviceBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "snapshots", "devices", "adminRight", "userRight" ], "description": "Removes Devices from the Snapshot's settings", "parameters": [ { "in": "path", "name": "settingId", "description": "ID of the Snapshot's settings", "required": true, "type": "string" }, { "in": "body", "name": "Devices", "description": "Devices to be removed from the Snapshot's settings", "required": true, "schema": { "$ref": "#/definitions/baseListId" } } ], "responses": { "200": { "description": "The list of Devices associated with the Snapshot's settings", "schema": { "type": "array", "items": { "$ref": "#/definitions/DeviceBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/snapshots/setting/eventtypes": { "get": { "tags": [ "snapshots", "eventtypes", "adminRight" ], "description": "Returns a list of Event types associated with the Snapshot's settings", "responses": { "200": { "description": "The list of Event types associated with the Snapshot's settings", "schema": { "type": "array", "items": { "$ref": "#/definitions/baseObject" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/system/attendance": { "get": { "tags": [ "system", "adminRight" ], "description": "Returns the Attendance Setting", "responses": { "200": { "description": "Returns the Attendance Setting", "schema": { "$ref": "#/definitions/AttendanceMode" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "system", "adminRight" ], "description": "Performs a change of the Attendance Setting", "parameters": [ { "in": "body", "name": "AttendanceMode", "description": "The edited AttendanceMode", "required": true, "schema": { "$ref": "#/definitions/AttendanceMode" } } ], "responses": { "200": { "description": "Returns the Attendance Setting", "schema": { "$ref": "#/definitions/AttendanceMode" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/system/license": { "get": { "tags": [ "system", "adminRight" ], "description": "Returns the current License", "responses": { "200": { "description": "Returns the current License", "schema": { "$ref": "#/definitions/License" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "system", "adminRight" ], "description": "Upload of the License file", "parameters": [ { "in": "body", "name": "file", "description": "The License file", "required": true, "schema": { "type": "string", "format": "file-xml" } } ], "responses": { "200": { "description": "Returns the current License", "schema": { "$ref": "#/definitions/License" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/system/logs/attendance": { "get": { "tags": [ "system", "adminRight", "accessManagerRight", "userManagerRight", "attendanceManagerRight" ], "description": "Returns a list of Access Logs", "responses": { "200": { "description": "The list of Access Logs", "schema": { "type": "array", "items": { "$ref": "#/definitions/AttendanceLog" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/system/logs/attendance/{logId}/attachments": { "get": { "tags": [ "system", "snapshots", "adminRight", "attendanceManagerRight" ], "description": "Returns a list of Snapshots", "parameters": [ { "in": "path", "name": "logId", "description": "ID of the log event", "required": true, "type": "integer" } ], "responses": { "200": { "description": "The list of Snapshots", "schema": { "$ref": "#/definitions/Attachment" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/system/logs/system": { "get": { "tags": [ "system", "adminRight", "userManagerRight" ], "description": "Returns a list of System Logs", "responses": { "200": { "description": "The list of System Logs", "schema": { "type": "array", "items": { "$ref": "#/definitions/SystemLog" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/system/logs/system/{logId}/attachments": { "get": { "tags": [ "system", "snapshots", "synchronization", "adminRight", "attendanceManagerRight" ], "description": "Returns a list of Snapshots or the Synchronization Log", "parameters": [ { "in": "path", "name": "logId", "description": "ID of the log event", "required": true, "type": "integer" } ], "responses": { "200": { "description": "The list of Snapshots or the Synchronization Log", "schema": { "$ref": "#/definitions/Attachment" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/system/mobilekey": { "get": { "tags": [ "system", "adminRight" ], "description": "Returns the Mobile Key settings", "responses": { "200": { "description": "Returns the Mobile Key settings", "schema": { "$ref": "#/definitions/MobileKey" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "system", "adminRight" ], "description": "Performs a change of Mobile Key settings", "parameters": [ { "in": "body", "name": "MobileKey", "description": "The edited Mobile Key", "required": true, "schema": { "$ref": "#/definitions/MobileKey" } } ], "responses": { "200": { "description": "The Mobile Key settings", "schema": { "$ref": "#/definitions/MobileKey" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/system/smtp": { "get": { "tags": [ "system", "adminRight" ], "description": "Returns the SMTP settings", "responses": { "200": { "description": "Returns the SMTP settings", "schema": { "$ref": "#/definitions/Smtp" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "system", "adminRight" ], "description": "Performs a change of SMTP settings", "parameters": [ { "in": "body", "name": "Smtp", "description": "The edited Smtp", "required": true, "schema": { "$ref": "#/definitions/Smtp" } } ], "responses": { "200": { "description": "The SMTP settings", "schema": { "$ref": "#/definitions/Smtp" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/system/smtp/sendtestemail": { "put": { "tags": [ "system", "adminRight" ], "description": "Sends a testing email", "parameters": [ { "in": "body", "name": "EmailTo", "description": "The address to send the testing email to", "required": true, "schema": { "type": "object", "required": [ "emailTo" ], "properties": { "emailTo": { "type": "string" } } } } ], "responses": { "200": { "description": "The testing email has been sent", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/system/upgrade": { "get": { "tags": [ "system", "adminRight" ], "description": "Returns the Upgrade setting", "responses": { "200": { "description": "Returns the Upgrade setting", "schema": { "$ref": "#/definitions/Upgrade" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "system", "adminRight" ], "description": "Performs a change of Upgrade setting", "parameters": [ { "in": "body", "name": "UpgradeSetting", "description": "The edited UpgradeSetting", "required": true, "schema": { "$ref": "#/definitions/Upgrade" } } ], "responses": { "200": { "description": "The Upgrade setting", "schema": { "$ref": "#/definitions/Upgrade" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/system/upgrade/run": { "put": { "tags": [ "system", "adminRight" ], "description": "Performs the Upgrade", "parameters": [ { "in": "body", "name": "NewUpgrade", "description": "The upgrade data", "required": true, "schema": { "$ref": "#/definitions/NewUpgrade" } } ], "responses": { "200": { "description": "The Upgrade is in progress", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/system/upgrade/checknewversion": { "put": { "tags": [ "system", "adminRight" ], "description": "Checks availability of a new version", "parameters": [ { "in": "body", "name": "Version", "description": "The object holding the current version number", "required": true, "schema": { "type": "object", "properties": { "Version": { "type": "string" } } } } ], "responses": { "200": { "description": "Returns the Upgrade setting of the new version (if any)", "schema": { "$ref": "#/definitions/NewUpgrade" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/system/data/synchronization/export.csv": { "put": { "tags": [ "system", "synchronization", "adminRight" ], "description": "Performs an export of synchronization data from AC database to a CSV file.", "responses": { "200": { "description": "The synchronization data from AC database as a CSV file", "schema": { "type": "file", "format": "csv" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/system/data/synchronization/import.csv": { "put": { "tags": [ "system", "synchronization", "adminRight" ], "description": "Performs the synchronization from local CSV file immediately.", "parameters": [ { "in": "body", "name": "file", "description": "data", "required": true, "schema": { "type": "string", "format": "file-csv" } } ], "responses": { "200": { "description": "The Synchronization Settings", "schema": { "$ref": "#/definitions/SynchronizationSettings" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/system/data/synchronization/run": { "put": { "tags": [ "system", "synchronization", "adminRight" ], "description": "Performs the synchronization from FTP server immediately.", "responses": { "200": { "description": "The Synchronization Settings", "schema": { "$ref": "#/definitions/SynchronizationSettings" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/system/data/synchronization": { "get": { "tags": [ "system", "synchronization", "adminRight" ], "description": "Gets the Synchronization Settings.", "responses": { "200": { "description": "The Synchronization Settings", "schema": { "$ref": "#/definitions/SynchronizationSettings" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "system", "synchronization", "adminRight" ], "description": "Updates the Synchronization Settings.", "parameters": [ { "in": "body", "name": "SynchronizationSettings", "description": "Synchronization Settings", "required": true, "schema": { "$ref": "#/definitions/SynchronizationSettings" } } ], "responses": { "200": { "description": "The Synchronization Settings has been successfuly updated", "schema": { "$ref": "#/definitions/SynchronizationSettings" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/system/verification/loadimage": { "put": { "tags": [ "system", "verification", "anonymous" ], "description": "Creates new Captcha for the key-identified-subject.", "parameters": [ { "in": "body", "name": "VerificationKey", "description": "The key to identify the Subject which does the verification", "required": true, "schema": { "$ref": "#/definitions/VerificationKey" } } ], "responses": { "200": { "description": "The image representation of a new created Captcha", "schema": { "$ref": "#/definitions/VerificationObject" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/system/verification": { "put": { "tags": [ "system", "verification", "anonymous" ], "description": "Verifies the Captcha by the key-identified-subject.", "parameters": [ { "in": "body", "name": "VerificationPair", "description": "The key to identify the Subject performing verification and the text representation of the Captcha", "required": true, "schema": { "$ref": "#/definitions/VerificationPair" } } ], "responses": { "200": { "description": "Successful verification", "schema": { "type": "null" } }, "423": { "description": "Unsuccessful verification", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/timeprofiles": { "get": { "tags": [ "timeprofiles", "adminRight", "accessManagerRight" ], "description": "Returns a list of Time Profiles", "responses": { "200": { "description": "The list of Time Profiles", "schema": { "type": "array", "items": { "$ref": "#/definitions/TimeProfile" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "tags": [ "timeprofiles", "adminRight", "accessManagerRight" ], "description": "Creates a new Time Profile", "parameters": [ { "in": "body", "name": "TimeProfile", "description": "The object to create the Time Profile from", "required": true, "schema": { "$ref": "#/definitions/TimeProfile" } } ], "responses": { "200": { "description": "The detail of the created Time Profile", "schema": { "$ref": "#/definitions/TimeProfile" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/timeprofiles/validate": { "put": { "tags": [ "TODO", "timeprofiles", "adminRight", "accessManagerRight" ], "description": "The validation of Time Profile property Name uniqueness", "parameters": [ { "in": "body", "name": "TimeProfile", "description": "The TimeProfile to validate", "required": true, "schema": { "$ref": "#/definitions/TimeProfile" } } ], "responses": { "200": { "description": "Validation successful" }, "default": { "description": "Validation failed", "schema": { "$ref": "#/definitions/Error" } } } } }, "/timeprofiles/{timeprofileId}": { "get": { "tags": [ "timeprofiles", "adminRight", "accessManagerRight" ], "description": "Returns a detail of the Time Profile", "parameters": [ { "in": "path", "name": "timeprofileId", "description": "ID of the Time Profile", "required": true, "type": "string" } ], "responses": { "200": { "description": "The detail of the Time Profile", "schema": { "$ref": "#/definitions/TimeProfile" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "timeprofiles", "adminRight", "accessManagerRight" ], "description": "Performs a change of the Time Profile", "parameters": [ { "in": "path", "name": "timeprofileId", "description": "ID of the Time Profile", "required": true, "type": "string" }, { "in": "body", "name": "TimeProfile", "description": "The edited TimeProfile", "required": true, "schema": { "description": "Required from $ref: '#/definitions/TimeProfile'", "type": "object", "required": [ "ModifiedGuid" ], "properties": { "ModifiedGuid": { "$ref": "#/definitions/UUID" } } } } ], "responses": { "200": { "description": "The detail of the Time Profile", "schema": { "$ref": "#/definitions/TimeProfile" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "timeprofiles", "adminRight", "accessManagerRight" ], "description": "Deletes the Time Profile", "parameters": [ { "in": "path", "name": "timeprofileId", "description": "ID of the Time Profile", "required": true, "type": "string" }, { "in": "body", "name": "TimeProfile", "description": "The TimeProfile to delete", "required": true, "schema": { "description": "Required from $ref: '#/definitions/TimeProfile'", "type": "object", "required": [ "ModifiedGuid" ], "properties": { "ModifiedGuid": { "$ref": "#/definitions/UUID" } } } } ], "responses": { "200": { "description": "The Time Profile has been deleted" }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/timeprofiles/{timeprofileId}/days": { "get": { "tags": [ "timeprofiles", "days", "adminRight", "accessManagerRight" ], "description": "Returns a list of Days of the Time Profile", "parameters": [ { "in": "path", "name": "timeprofileId", "description": "ID of the Time Profile", "required": true, "type": "string" } ], "responses": { "200": { "description": "The list of Days of the Time Profile", "schema": { "type": "array", "items": { "$ref": "#/definitions/Day" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/timeprofiles/{timeprofileId}/days/{dayOfWeek}": { "get": { "tags": [ "timeprofiles", "days", "adminRight", "accessManagerRight" ], "description": "Returns a detail of the Day of the Time Profile", "parameters": [ { "in": "path", "name": "timeprofileId", "description": "ID of the Time Profile", "required": true, "type": "string" }, { "in": "path", "name": "dayOfWeek", "description": "The day of week number", "required": true, "type": "integer" } ], "responses": { "200": { "description": "The detail of the Day of the Time Profile", "schema": { "$ref": "#/definitions/Day" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "timeprofiles", "days", "adminRight", "accessManagerRight" ], "description": "Performs a change of the Day of the Time Profile", "parameters": [ { "in": "path", "name": "timeprofileId", "description": "ID of the Time Profile", "required": true, "type": "string" }, { "in": "path", "name": "dayOfWeek", "description": "The day of week number", "required": true, "type": "integer" }, { "in": "body", "name": "Day", "required": true, "schema": { "description": "Required from $ref: '#/definitions/Day'", "type": "object" } } ], "responses": { "200": { "description": "The detail of the Day of the Time Profile", "schema": { "$ref": "#/definitions/Day" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/timeprofiles/{timeprofileId}/days/{dayOfWeek}/intervals": { "get": { "tags": [ "timeprofiles", "days", "intervals", "adminRight", "accessManagerRight" ], "description": "Returns a list of Intervals of the Day of the Time Profile", "parameters": [ { "in": "path", "name": "timeprofileId", "description": "ID of the Time Profile", "required": true, "type": "string" }, { "in": "path", "name": "dayOfWeek", "description": "The day of week number", "required": true, "type": "integer" } ], "responses": { "200": { "description": "The list of Intervals of the Day of the Time Profile", "schema": { "type": "array", "items": { "$ref": "#/definitions/Interval" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "tags": [ "timeprofiles", "days", "intervals", "adminRight", "accessManagerRight" ], "description": "Creates new Intervals of the Day of the Time Profile", "parameters": [ { "in": "path", "name": "timeprofileId", "description": "ID of the Time Profile", "required": true, "type": "string" }, { "in": "path", "name": "dayOfWeek", "description": "Day of week number", "required": true, "type": "integer" }, { "in": "body", "name": "Intervals", "description": "The array of objects to create the Intervals from", "schema": { "type": "array", "items": { "$ref": "#/definitions/Interval" } } } ], "responses": { "200": { "description": "The list of Intervals of the Day of the Time Profile", "schema": { "type": "array", "items": { "$ref": "#/definitions/Interval" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/timeprofiles/{timeprofileId}/days/{dayOfWeek}/intervals/{intervalId}": { "get": { "tags": [ "timeprofiles", "days", "intervals", "adminRight", "accessManagerRight" ], "description": "Returns a detail of the Interval of the Day of the Time Profile", "parameters": [ { "in": "path", "name": "timeprofileId", "description": "ID of the Time Profile", "required": true, "type": "string" }, { "in": "path", "name": "dayOfWeek", "description": "The day of week number", "required": true, "type": "integer" }, { "in": "path", "name": "intervalId", "description": "ID of the Interval", "required": true, "type": "integer" } ], "responses": { "200": { "description": "The detail of the Interval of the Day of the Time Profile", "schema": { "$ref": "#/definitions/Interval" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "timeprofiles", "days", "intervals", "adminRight", "accessManagerRight" ], "description": "Performs a change of the Interval of the Day of the Time Profile", "parameters": [ { "in": "path", "name": "timeprofileId", "description": "ID of the Time Profile", "required": true, "type": "string" }, { "in": "path", "name": "dayOfWeek", "description": "Day of week number", "required": true, "type": "integer" }, { "in": "path", "name": "intervalId", "description": "ID of the Interval", "required": true, "type": "integer" }, { "in": "body", "name": "Interval", "description": "The edited Interval", "required": true, "schema": { "description": "Required from $ref: '#/definitions/Interval'", "type": "object", "required": [ "ModifiedGuid" ], "properties": { "ModifiedGuid": { "$ref": "#/definitions/UUID" } } } } ], "responses": { "200": { "description": "The detail of the Interval", "schema": { "$ref": "#/definitions/Interval" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "days", "intervals", "adminRight", "accessManagerRight" ], "description": "Deletes the Interval of the Day of the Time Profile", "parameters": [ { "in": "path", "name": "timeprofileId", "description": "ID of the Time Profile", "required": true, "type": "string" }, { "in": "path", "name": "dayOfWeek", "description": "The day of week number", "required": true, "type": "integer" }, { "in": "path", "name": "intervalId", "description": "ID of the Interval", "required": true, "type": "integer" }, { "in": "body", "name": "Interval", "description": "The Interval to delete", "required": true, "schema": { "description": "Required from $ref: '#/definitions/Interval'", "type": "object", "required": [ "ModifiedGuid" ], "properties": { "ModifiedGuid": { "$ref": "#/definitions/UUID" } } } } ], "responses": { "200": { "description": "The detail of the Day of the Time Profile", "schema": { "$ref": "#/definitions/Day" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users": { "get": { "tags": [ "users", "userRight", "adminRight", "userManagerRight", "accessManagerRight", "attendanceManagerRight" ], "description": "Returns a list of Users. User objects in this list contain a hidden string properties PhoneNumberList (Phone Numbers, separated by colon) and CompanyName enabling to filter by.", "responses": { "200": { "description": "The list of Users", "schema": { "type": "array", "items": { "$ref": "#/definitions/User" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "patch": { "tags": [ "users", "adminRight", "userManagerRight" ], "description": "Bulk actions", "parameters": [ { "in": "body", "name": "User", "description": "The edited Users", "required": true, "schema": { "type": "array", "items": { "$ref": "#/definitions/User" } } } ], "responses": { "200": { "description": "Changes was accepted" }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "tags": [ "users", "adminRight", "userManagerRight" ], "description": "Creates a new User", "parameters": [ { "in": "body", "name": "User", "description": "The object to create the User from", "required": true, "schema": { "$ref": "#/definitions/basePOSTwithCompany" } } ], "responses": { "200": { "description": "The detail of the created User", "schema": { "$ref": "#/definitions/User" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "users", "adminRight", "userManagerRight" ], "description": "Deletes selected Users", "parameters": [ { "in": "body", "name": "Users", "description": "Required from $ref: '#/definitions/User'", "required": true, "schema": { "type": "array", "items": { "$ref": "#/definitions/baseObject" } } } ], "responses": { "200": { "description": "Users have been deleted", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/validate": { "put": { "tags": [ "TODO", "users", "adminRight", "userManagerRight" ], "description": "The validation of User property Login uniqueness", "parameters": [ { "name": "User", "in": "body", "description": "The User to validate", "required": true, "schema": { "$ref": "#/definitions/User" } } ], "responses": { "200": { "description": "Validation successful" }, "default": { "description": "Validation failed", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}": { "get": { "tags": [ "users", "userRight", "adminRight", "userManagerRight", "accessManagerRight", "attendanceManagerRight" ], "description": "Returns a detail of the User", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" } ], "responses": { "200": { "description": "The detail of the User", "schema": { "$ref": "#/definitions/User" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "users", "adminRight", "userManagerRight" ], "description": "Performs a change of the User", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "body", "name": "User", "description": "The edited User", "required": true, "schema": { "$ref": "#/definitions/User" } } ], "responses": { "200": { "description": "The detail of the User", "schema": { "$ref": "#/definitions/User" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "users", "adminRight", "userManagerRight" ], "description": "Deletes the User", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "body", "name": "User", "description": "The User to delete", "required": true, "schema": { "$ref": "#/definitions/User" } } ], "responses": { "200": { "description": "The User has been deleted", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/groups": { "get": { "tags": [ "users", "groups", "userRight", "adminRight", "userManagerRight", "accessManagerRight", "attendanceManagerRight" ], "description": "Returns a list of Groups associated with the User", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" } ], "responses": { "200": { "description": "The list of Groups associated with the User", "schema": { "type": "array", "items": { "$ref": "#/definitions/GroupBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "users", "adminRight", "userManagerRight" ], "description": "Adds a User to Groups", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "body", "name": "Groups", "description": "Groups to which the User has to be added", "required": true, "schema": { "$ref": "#/definitions/baseListId" } } ], "responses": { "200": { "description": "The list of Groups associated with the User", "schema": { "type": "array", "items": { "$ref": "#/definitions/GroupBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "users", "adminRight", "userManagerRight" ], "description": "Removes a User from Groups", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "body", "name": "Groups", "description": "Groups from which the User has to be removed", "required": true, "schema": { "$ref": "#/definitions/baseListId" } } ], "responses": { "200": { "description": "The list of Groups associated with the User", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/cards": { "get": { "tags": [ "users", "userRight", "adminRight", "userManagerRight", "accessManagerRight", "attendanceManagerRight" ], "description": "Returns a list of Cards of the User", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" } ], "responses": { "200": { "description": "The list of Cards of the User", "schema": { "type": "array", "items": { "$ref": "#/definitions/Card" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "tags": [ "users", "userRight", "adminRight", "userManagerRight" ], "description": "Creates a new Card for the User", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "body", "name": "Card", "description": "The object to create the Card from", "required": true, "schema": { "description": "Required from $ref: '#/definitions/Card", "type": "object", "required": [ "Identification" ], "properties": { "Identification": { "type": "string" } } } } ], "responses": { "200": { "description": "The detail of the created Card", "schema": { "$ref": "#/definitions/Card" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/cards/{cardId}": { "get": { "tags": [ "users", "userRight", "adminRight", "userManagerRight", "accessManagerRight", "attendanceManagerRight" ], "description": "Returns a detail of the Card", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "path", "name": "cardId", "description": "ID of the Card", "required": true, "type": "string" } ], "responses": { "200": { "description": "The detail of the Card", "schema": { "$ref": "#/definitions/Card" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "users", "userRight", "adminRight", "userManagerRight" ], "description": "Performs a change of the Card", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "path", "name": "cardId", "description": "ID of the Card", "required": true, "type": "string" }, { "in": "body", "name": "Card", "description": "The edited Card", "required": true, "schema": { "$ref": "#/definitions/Card" } } ], "responses": { "200": { "description": "The detail of the Card", "schema": { "$ref": "#/definitions/Card" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "users", "userRight", "adminRight", "userManagerRight" ], "description": "Deletes the Card", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "path", "name": "cardId", "description": "ID of the Card", "required": true, "type": "string" }, { "in": "body", "name": "Card", "description": "The Card to delete", "required": true, "schema": { "$ref": "#/definitions/Card" } } ], "responses": { "200": { "description": "The Card has been deleted", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/codes": { "get": { "tags": [ "users", "userRight", "adminRight", "userManagerRight" ], "description": "Returns a list of Codes of the User", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" } ], "responses": { "200": { "description": "The list of Codes of the User", "schema": { "type": "array", "items": { "$ref": "#/definitions/Code" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "tags": [ "users", "adminRight", "userManagerRight" ], "description": "Creates a new Code for the User", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "body", "name": "Code", "description": "The object to create the Code from", "required": true, "schema": { "description": "Required from $ref: '#/definitions/Code", "type": "object", "required": [ "SwitchCode", "Ordinal" ], "properties": { "SwitchCode": { "type": "string" }, "Ordinal": { "type": "integer" } } } } ], "responses": { "200": { "description": "The detail of the created Code", "schema": { "$ref": "#/definitions/Code" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/codes/{codeId}": { "get": { "tags": [ "users", "userRight", "adminRight", "userManagerRight" ], "description": "Returns a detail of the Code", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "path", "name": "codeId", "description": "ID of the Code", "required": true, "type": "string" } ], "responses": { "200": { "description": "The detail of the Code", "schema": { "$ref": "#/definitions/Code" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "users", "adminRight", "userManagerRight" ], "description": "Performs a change of the Code", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "path", "name": "codeId", "description": "ID of the Code", "required": true, "type": "string" }, { "in": "body", "name": "Code", "description": "The edited Code", "required": true, "schema": { "$ref": "#/definitions/Code" } } ], "responses": { "200": { "description": "The detail of the Code", "schema": { "$ref": "#/definitions/Code" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "users", "adminRight", "userManagerRight" ], "description": "Deletes the Code", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "path", "name": "codeId", "description": "ID of the Code", "required": true, "type": "string" }, { "in": "body", "name": "Code", "description": "The Code to delete", "required": true, "schema": { "$ref": "#/definitions/Code" } } ], "responses": { "200": { "description": "The Code has been deleted", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/mobilekey": { "get": { "tags": [ "users", "adminRight", "userManagerRight" ], "description": "Returns the settings and state of mobilekey", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" } ], "responses": { "200": { "description": "The list of Phone Numbers of the User", "schema": { "type": "array", "items": { "$ref": "#/definitions/MobileKeyUser" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/mobilekey/pairing/start": { "put": { "tags": [ "users", "adminRight", "userManagerRight" ], "description": "Start mobile key pairing", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" } ], "responses": { "200": { "description": "Returns the State of Pairing", "schema": { "$ref": "#/definitions/MobileKeyPairingState" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/mobilekey/pairing/stop": { "put": { "tags": [ "users", "adminRight", "userManagerRight" ], "description": "Stop mobile key pairing", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" } ], "responses": { "200": { "description": "Returns the State of Pairing", "schema": { "$ref": "#/definitions/MobileKeyPairingState" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/mobilekey/{AuthId}": { "delete": { "tags": [ "users", "adminRight", "userManagerRight" ], "description": "Deletes the Mobile Key", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "path", "name": "AuthId", "description": "Authorization Id of Mobile Key", "required": true, "type": "string" } ], "responses": { "200": { "description": "The Mobile Key has been deleted", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/phonenumbers": { "get": { "tags": [ "users", "userRight", "adminRight", "userManagerRight" ], "description": "Returns a list of Phone Numbers of the User", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" } ], "responses": { "200": { "description": "The list of Phone Numbers of the User", "schema": { "type": "array", "items": { "$ref": "#/definitions/PhoneNumber" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "tags": [ "users", "adminRight", "userManagerRight" ], "description": "Creates a new Phone Number for the User", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "body", "name": "PhoneNumber", "description": "The object to create the Phone Number from", "required": true, "schema": { "$ref": "#/definitions/PhoneNumber" } } ], "responses": { "200": { "description": "The detail of the created Phone Number", "schema": { "$ref": "#/definitions/PhoneNumber" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/phonenumbers/{phonenumberId}": { "get": { "tags": [ "users", "userRight", "adminRight", "userManagerRight" ], "description": "Returns a detail of the Phone Number", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "path", "name": "phonenumberId", "description": "ID of the Phone Number", "required": true, "type": "string" } ], "responses": { "200": { "description": "The detail of the Phone Number", "schema": { "$ref": "#/definitions/PhoneNumber" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "users", "adminRight", "userManagerRight" ], "description": "Performs a change of the Phone Number", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "path", "name": "phonenumberId", "description": "ID of the Phone Number", "required": true, "type": "string" }, { "in": "body", "name": "PhoneNumber", "description": "The edited Phone Number", "required": true, "schema": { "$ref": "#/definitions/PhoneNumber" } } ], "responses": { "200": { "description": "The detail of the Phone Number", "schema": { "$ref": "#/definitions/PhoneNumber" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "users", "adminRight", "userManagerRight" ], "description": "Deletes the Phone Number", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "path", "name": "phonenumberId", "description": "ID of the Phone Number", "required": true, "type": "string" }, { "in": "body", "name": "PhoneNumber", "description": "The Phone Number to delete", "required": true, "schema": { "$ref": "#/definitions/PhoneNumber" } } ], "responses": { "200": { "description": "The Phone Number has been deleted", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/settings": { "get": { "tags": [ "users", "userRight" ], "description": "Returns a detail of the User Settings", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" } ], "responses": { "200": { "description": "The detail of the User Settings", "schema": { "$ref": "#/definitions/UserSettings" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "users", "userRight" ], "description": "Performs a change of the User Settings", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "body", "name": "UserSettings", "description": "The edited User Settings", "required": true, "schema": { "$ref": "#/definitions/UserSettings" } } ], "responses": { "200": { "description": "The detail of the User Settings", "schema": { "$ref": "#/definitions/UserSettings" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/right": { "get": { "tags": [ "users", "userRight", "adminRight" ], "description": "Returns a detail of the User Rights", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "body", "name": "Right", "required": true, "schema": { "$ref": "#/definitions/Right" } } ], "responses": { "200": { "description": "The detail of the User Rights", "schema": { "$ref": "#/definitions/Right" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "users", "userRight", "adminRight" ], "description": "Performs a change of the User Rights", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "body", "name": "UserRights", "description": "The edited User Rights", "required": true, "schema": { "$ref": "#/definitions/Right" } } ], "responses": { "200": { "description": "The detail of the User Rights", "schema": { "$ref": "#/definitions/Right" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/changepassword": { "put": { "tags": [ "users", "userRight", "adminRight" ], "description": "Performs a change of the User Password and sends notification e-mail", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" } ], "responses": { "200": { "description": "The detail of the User", "schema": { "$ref": "#/definitions/User" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/attendance": { "get": { "tags": [ "attendance", "users", "userManagerRight", "attendanceManagerRight", "adminRight" ], "description": "Returns a list of present Users", "responses": { "200": { "description": "The list of present Users", "schema": { "type": "array", "items": { "$ref": "#/definitions/User" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/appointments/export.csv": { "put": { "tags": [ "attendance", "users", "userManagerRight", "attendanceManagerRight", "adminRight" ], "description": "Performs an export of detailed attendance data to a CSV file. If there are users in the body, the detailed CSV is produced. If there are no users in the body, the summary CSV is produced.", "parameters": [ { "in": "body", "name": "timeRange and users", "description": "The month and users to export", "required": true, "schema": { "type": "object", "properties": { "From": { "description": "The start date of the month", "type": "string", "format": "date-time" }, "Users": { "$ref": "#/definitions/baseListId" } } } } ], "responses": { "200": { "description": "The attendance data as a CSV file", "schema": { "type": "file", "format": "csv" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/attendance": { "get": { "tags": [ "attendance", "users", "userRight", "userManagerRight", "attendanceManagerRight", "adminRight" ], "description": "Returns the structured attendance data of the User within the current month", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" } ], "responses": { "200": { "description": "The structured attendance data of the User", "schema": { "$ref": "#/definitions/UserAttendanceDetail" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/attendance/{year}/{month}/appointments": { "get": { "tags": [ "attendance", "users", "userRight", "userManagerRight", "attendanceManagerRight", "adminRight" ], "description": "Returns the structured attendance data of the User within the month", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "path", "name": "year", "description": "The year", "required": true, "type": "integer" }, { "in": "path", "name": "month", "description": "The month", "required": true, "type": "integer" } ], "responses": { "200": { "description": "The structured attendance data of the User", "schema": { "$ref": "#/definitions/UserAttendanceDetail" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/attendance/{year}/{month}/{day}/appointments": { "post": { "tags": [ "attendance", "users", "userRight", "userManagerRight", "attendanceManagerRight", "adminRight" ], "description": "Creates a new Attendance Record", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "path", "name": "year", "description": "The year", "required": true, "type": "integer" }, { "in": "path", "name": "month", "description": "The month", "required": true, "type": "integer" }, { "in": "path", "name": "day", "description": "The day", "required": true, "type": "integer" }, { "in": "body", "name": "Appointments", "description": "The object to create the Attendance Record from", "required": true, "schema": { "$ref": "#/definitions/UserAttendanceDay" } } ], "responses": { "200": { "description": "User Appointments to the day", "schema": { "$ref": "#/definitions/UserAttendanceDay" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "attendance", "users", "userRight", "userManagerRight", "attendanceManagerRight", "adminRight" ], "description": "Sets the structured attendance data of the User to those being sent.", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "path", "name": "year", "description": "The year", "required": true, "type": "integer" }, { "in": "path", "name": "month", "description": "The month", "required": true, "type": "integer" }, { "in": "path", "name": "day", "description": "The day", "required": true, "type": "integer" }, { "in": "body", "name": "Appointments", "description": "Appointments to change", "required": true, "schema": { "$ref": "#/definitions/UserAttendanceDay" } } ], "responses": { "200": { "description": "User Appointments to the day", "schema": { "$ref": "#/definitions/UserAttendanceDay" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "attendance", "users", "userRight", "userManagerRight", "attendanceManagerRight", "adminRight" ], "description": "Deletes the structured attendance data of the User", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "path", "name": "year", "description": "The year", "required": true, "type": "integer" }, { "in": "path", "name": "month", "description": "The month", "required": true, "type": "integer" }, { "in": "path", "name": "day", "description": "The day", "required": true, "type": "integer" }, { "in": "body", "name": "Appointments", "description": "Appointments to delete", "required": true, "schema": { "$ref": "#/definitions/UserAttendanceDay" } } ], "responses": { "200": { "description": "User Appointments to the day (void)", "schema": { "$ref": "#/definitions/UserAttendanceDay" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/attendance/{year}/{month}/{day}/appointments/{appointmentId}": { "put": { "tags": [ "attendance", "users", "userRight", "userManagerRight", "attendanceManagerRight", "adminRight" ], "description": "Performs a change of the Attendance Record", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "path", "name": "year", "description": "The year", "required": true, "type": "integer" }, { "in": "path", "name": "month", "description": "The month", "required": true, "type": "integer" }, { "in": "path", "name": "day", "description": "The day", "required": true, "type": "integer" }, { "in": "path", "name": "appointmentId", "description": "ID of the Attendance Record", "required": true, "type": "string" }, { "in": "body", "name": "Appointment", "description": "The Attendance Record to change", "required": true, "schema": { "description": "From $ref: '#/definitions/Appointment'", "type": "object", "required": [ "ModifiedGuid" ], "properties": { "ModifiedGuid": { "$ref": "#/definitions/UUID" } } } } ], "responses": { "200": { "description": "The detail of the Attendance Record", "schema": { "$ref": "#/definitions/Appointment" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "attendance", "users", "userRight", "userManagerRight", "attendanceManagerRight", "adminRight" ], "description": "Deletes the Attendance Record", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "path", "name": "year", "description": "The year", "required": true, "type": "integer" }, { "in": "path", "name": "month", "description": "The month", "required": true, "type": "integer" }, { "in": "path", "name": "day", "description": "The day", "required": true, "type": "integer" }, { "in": "path", "name": "appointmentId", "description": "ID of the Attendance Record", "required": true, "type": "string" }, { "in": "body", "name": "Appointment", "description": "The Attendance Record to delete", "required": true, "schema": { "description": "From $ref: '#/definitions/Appointment'", "type": "object", "required": [ "ModifiedGuid" ], "properties": { "ModifiedGuid": { "$ref": "#/definitions/UUID" } } } } ], "responses": { "200": { "description": "The Attendance Record has been deleted", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/appointments": { "post": { "tags": [ "attendance", "users", "userManagerRight", "accessManagerRight", "attendanceManagerRight", "adminRight" ], "description": "Creates a new User Appointment", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "body", "name": "Appointment", "description": "The object to create the User Appointment from", "required": true, "schema": { "$ref": "#/definitions/Appointment" } } ], "responses": { "200": { "description": "User Appointments to the day", "schema": { "$ref": "#/definitions/UserAttendanceDay" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/appointments/{appointmentId}": { "put": { "tags": [ "attendance", "users", "userManagerRight", "accessManagerRight", "attendanceManagerRight", "adminRight" ], "description": "Performs a change of the User Appointment", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "path", "name": "appointmentId", "description": "ID of the Attendance Record", "required": true, "type": "integer" }, { "in": "body", "name": "Appointment", "description": "The edited User Appointment", "required": true, "schema": { "$ref": "#/definitions/Appointment" } } ], "responses": { "200": { "description": "User Appointments to the day", "schema": { "$ref": "#/definitions/UserAttendanceDay" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "attendance", "users", "userManagerRight", "accessManagerRight", "attendanceManagerRight", "adminRight" ], "description": "Deletes the User Appointment", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "path", "name": "appointmentId", "description": "ID of the User Appointment", "required": true, "type": "integer" }, { "in": "body", "name": "Appointment", "description": "The User Appointment to delete", "required": true, "schema": { "$ref": "#/definitions/Appointment" } } ], "responses": { "200": { "description": "User Appointments to the day", "schema": { "$ref": "#/definitions/UserAttendanceDay" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/appointments/export.csv": { "put": { "tags": [ "attendance", "users", "userRight", "userManagerRight", "attendanceManagerRight", "adminRight" ], "description": "Performs an export of attendance data to a CSV file", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" } ], "responses": { "200": { "description": "The attendance data as a CSV file", "schema": { "type": "file", "format": "csv" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/appointments/export.pdf": { "put": { "tags": [ "attendance", "users", "userRight", "userManagerRight", "attendanceManagerRight", "adminRight" ], "description": "Performs an export of attendance data to a PDF file", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" } ], "responses": { "200": { "description": "The attendance data as a PDF file", "schema": { "type": "file", "format": "pdf" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/presence": { "get": { "tags": [ "presence", "users", "userManagerRight", "attendanceManagerRight", "adminRight" ], "description": "Returns a list of present Users", "responses": { "200": { "description": "The list of present Users", "schema": { "type": "object", "properties": { "IsSpecifyingDirection": { "type": "boolean" }, "Present": { "type": "array", "items": { "$ref": "#/definitions/Presence" } } } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/users/{userId}/restrictedaccess": { "get": { "tags": [ "users", "userRight", "adminRight", "userManagerRight" ], "description": "Returns a Restricted Access of the User", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" } ], "responses": { "200": { "description": "The Restricted Access of the User", "schema": { "type": "array", "items": { "$ref": "#/definitions/RestrictedAccess" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "users", "adminRight", "userManagerRight" ], "description": "Set a Restricted Access for the User", "parameters": [ { "in": "path", "name": "userId", "description": "ID of the User", "required": true, "type": "string" }, { "in": "body", "name": "RestrictedAccess", "description": "The object to set Restricted Access", "required": true, "schema": { "$ref": "#/definitions/RestrictedAccess" } } ], "responses": { "200": { "description": "The detail of the Restricted Access", "schema": { "$ref": "#/definitions/RestrictedAccess" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/visitorcards": { "get": { "tags": [ "visitorcards", "adminRight", "accessManagerRight" ], "description": "Returns a list of Visitor Cards.", "responses": { "200": { "description": "The list of Visitor Cards", "schema": { "type": "array", "items": { "$ref": "#/definitions/VisitorCard" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "tags": [ "visitorcards", "adminRight" ], "description": "Creates a new Visitor Card", "parameters": [ { "in": "body", "name": "VisitorCard", "description": "The object to create the Visitor Card from", "required": true, "schema": { "$ref": "#/definitions/basePOSTwithCompany" } } ], "responses": { "200": { "description": "The detail of the created Visitor Card", "schema": { "$ref": "#/definitions/VisitorCard" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/visitorcards/{visitorcardId}": { "get": { "tags": [ "visitorcards", "adminRight", "accessManagerRight" ], "description": "Returns a detail of the Visitor Card", "parameters": [ { "in": "path", "name": "visitorcardId", "description": "ID of the Visitor Card", "required": true, "type": "string" } ], "responses": { "200": { "description": "The detail of the Visitor Card", "schema": { "$ref": "#/definitions/VisitorCard" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "visitorcards", "adminRight", "accessManagerRight" ], "description": "Performs a change of the Visitor Card", "parameters": [ { "in": "path", "name": "visitorcardId", "description": "ID of the Visitor Card", "required": true, "type": "string" }, { "in": "body", "name": "VisitorCard", "description": "The edited Visitor Card", "required": true, "schema": { "$ref": "#/definitions/VisitorCard" } } ], "responses": { "200": { "description": "The detail of edited Visitor Card", "schema": { "$ref": "#/definitions/VisitorCard" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "visitorcards", "adminRight" ], "description": "Deletes selected Visitor Card", "parameters": [ { "in": "path", "name": "visitorcardId", "description": "ID of the Visitor Card", "required": true, "type": "string" }, { "in": "body", "name": "VisitorCard", "description": "The Visitor Card to delete", "required": true, "schema": { "$ref": "#/definitions/baseObject" } } ], "responses": { "200": { "description": "Visitor Card has been deleted", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/visitorcards/{visitorcardId}/visitor": { "get": { "tags": [ "visitorcards", "visitors", "adminRight", "accessManagerRight" ], "description": "Returns the Visitor associated with the Visitor Card", "parameters": [ { "in": "path", "name": "visitorcardId", "description": "ID of the Visitor Card", "required": true, "type": "string" } ], "responses": { "200": { "description": "The Visitor associated with the Visitor Card", "schema": { "$ref": "#/definitions/Visitor" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "tags": [ "visitorcards", "visitors", "adminRight", "accessManagerRight" ], "description": "Creates a new Visitor associated with the Visitor Card", "parameters": [ { "in": "path", "name": "visitorcardId", "description": "ID of the Visitor Card", "required": true, "type": "string" } ], "responses": { "200": { "description": "The detail of the created Visitor", "schema": { "$ref": "#/definitions/Visitor" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/visitorcards/{visitorcardId}/visitor/{visitorId}": { "get": { "tags": [ "visitorcards", "visitors", "adminRight", "accessManagerRight" ], "description": "Returns the Visitor associated with the Visitor Card", "parameters": [ { "in": "path", "name": "visitorcardId", "description": "ID of the Visitor Card", "required": true, "type": "string" }, { "in": "path", "name": "visitorId", "description": "ID of the Visitor", "required": true, "type": "integer" } ], "responses": { "200": { "description": "The Visitor associated with the Visitor Card", "schema": { "$ref": "#/definitions/Visitor" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "visitorcards", "visitors", "adminRight", "accessManagerRight" ], "description": "Performs a change of the Visitor associated with the Visitor Card", "parameters": [ { "in": "path", "name": "visitorcardId", "description": "ID of the Visitor Card", "required": true, "type": "string" }, { "in": "path", "name": "visitorId", "description": "ID of the Visitor", "required": true, "type": "integer" }, { "in": "body", "name": "Card", "description": "The edited Visitor", "required": true, "schema": { "$ref": "#/definitions/Visitor" } } ], "responses": { "200": { "description": "The Visitor associated with the Visitor Card", "schema": { "$ref": "#/definitions/Card" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "visitorcards", "visitors", "adminRight", "accessManagerRight" ], "description": "The Visitor has been deleted", "parameters": [ { "in": "path", "name": "visitorcardId", "description": "ID of the Visitor Card", "required": true, "type": "string" }, { "in": "path", "name": "visitorId", "description": "ID of the Visitor", "required": true, "type": "integer" }, { "in": "body", "name": "Visitor", "description": "The edited Visitor", "required": true, "schema": { "$ref": "#/definitions/Visitor" } } ], "responses": { "200": { "description": "The Visitor associated with the Visitor Card" }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/visitorcards/{visitorcardId}/groups": { "get": { "tags": [ "visitorcards", "groups", "adminRight", "accessManagerRight" ], "description": "Returns a list of Groups associated with the Visitor Card", "parameters": [ { "in": "path", "name": "visitorcardId", "description": "ID of the Visitor Card", "required": true, "type": "string" } ], "responses": { "200": { "description": "The list of Groups associated with the Visitor Card", "schema": { "type": "array", "items": { "$ref": "#/definitions/GroupBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "visitorcards", "groups", "adminRight" ], "description": "Adds a Visitor Card to Groups", "parameters": [ { "in": "path", "name": "visitorcardId", "description": "ID of the Visitor Card", "required": true, "type": "string" }, { "in": "body", "name": "Groups", "description": "Groups to which the Visitor Card has to be included", "required": true, "schema": { "$ref": "#/definitions/baseListId" } } ], "responses": { "200": { "description": "The list of Groups associated with the Visitor Card", "schema": { "type": "array", "items": { "$ref": "#/definitions/GroupBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "visitorcards", "groups", "adminRight" ], "description": "Removes a Visitor Card from Groups", "parameters": [ { "in": "path", "name": "visitorcardId", "description": "ID of the Visitor Card", "required": true, "type": "string" }, { "in": "body", "name": "Groups", "description": "Groups from which the Visitor Card has to be excluded", "required": true, "schema": { "$ref": "#/definitions/baseListId" } } ], "responses": { "200": { "description": "The list of Groups associated with the Visitor Card", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/zones": { "get": { "tags": [ "zones", "adminRight", "accessManagerRight" ], "description": "Returns a list of Zones", "responses": { "200": { "description": "The list of Zones", "schema": { "type": "array", "items": { "$ref": "#/definitions/Zone" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "post": { "tags": [ "zones", "adminRight" ], "description": "Creates a new Zone", "parameters": [ { "in": "body", "name": "Zone", "description": "The object to create the Zone from", "required": true, "schema": { "$ref": "#/definitions/basePOST" } } ], "responses": { "200": { "description": "The detail of the created Zone", "schema": { "$ref": "#/definitions/Zone" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/zones/validate": { "put": { "tags": [ "TODO", "zones", "adminRight" ], "description": "The validation of Zone property Name uniqueness", "parameters": [ { "in": "body", "name": "Zone", "description": "The Zone to validate", "required": true, "schema": { "$ref": "#/definitions/Zone" } } ], "responses": { "200": { "description": "Validation successful" }, "default": { "description": "Validation failed", "schema": { "$ref": "#/definitions/Error" } } } } }, "/zones/{zoneId}": { "get": { "tags": [ "zones", "adminRight", "accessManagerRight" ], "description": "Returns a detail of the Zone", "parameters": [ { "in": "path", "name": "zoneId", "description": "ID of the Zone", "required": true, "type": "string" } ], "responses": { "200": { "description": "The detail of the Zone", "schema": { "$ref": "#/definitions/Zone" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "zones", "adminRight" ], "description": "Performs a change of the Zone", "parameters": [ { "in": "path", "name": "zoneId", "description": "ID of the Zone", "required": true, "type": "string" }, { "in": "body", "name": "Zone", "description": "The edited Zone", "required": true, "schema": { "$ref": "#/definitions/Zone" } } ], "responses": { "200": { "description": "The detail of the Zone", "schema": { "$ref": "#/definitions/Zone" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "zones", "adminRight" ], "description": "Deletes the Zone", "parameters": [ { "in": "path", "name": "zoneId", "description": "ID of the Zone", "required": true, "type": "string" }, { "in": "body", "name": "Zone", "description": "The Zone to delete", "required": true, "schema": { "$ref": "#/definitions/Zone" } } ], "responses": { "200": { "description": "The Zone has been deleted", "schema": { "type": "null" } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/zones/{zoneId}/companies": { "get": { "tags": [ "zones", "companies", "adminRight", "accessManagerRight" ], "description": "Returns a list of Companies associated with the Zone", "parameters": [ { "in": "path", "name": "zoneId", "description": "ID of the Zone", "required": true, "type": "string" } ], "responses": { "200": { "description": "The list of Companies associated with the Zone", "schema": { "type": "array", "items": { "$ref": "#/definitions/CompanyBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "zones", "companies", "adminRight" ], "description": "Adds a Zone to Companies", "parameters": [ { "in": "path", "name": "zoneId", "description": "ID of the Zone", "required": true, "type": "string" }, { "in": "body", "name": "Companies", "description": "Companies to which the Zone has to be added", "required": true, "schema": { "$ref": "#/definitions/baseListId" } } ], "responses": { "200": { "description": "The list of Companies associated with the Zone", "schema": { "type": "array", "items": { "$ref": "#/definitions/CompanyBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "zones", "companies", "adminRight" ], "description": "Removes a Zone from Companies", "parameters": [ { "in": "path", "name": "zoneId", "description": "ID of the Zone", "required": true, "type": "string" }, { "in": "body", "name": "Companies", "description": "Companies from which the Zone has to be removed", "required": true, "schema": { "$ref": "#/definitions/baseListId" } } ], "responses": { "200": { "description": "The list of Companies associated with the Zone", "schema": { "type": "array", "items": { "$ref": "#/definitions/CompanyBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } }, "/zones/{zoneId}/devices": { "get": { "tags": [ "zones", "devices", "adminRight", "accessManagerRight" ], "description": "Returns a list of Devices associated with the Zone", "parameters": [ { "in": "path", "name": "zoneId", "description": "ID of the Zone", "required": true, "type": "string" } ], "responses": { "200": { "description": "The list of Devices associated with the Zone", "schema": { "type": "array", "items": { "$ref": "#/definitions/DeviceBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "put": { "tags": [ "zones", "devices", "adminRight" ], "description": "Adds Devices to the Zone", "parameters": [ { "in": "path", "name": "zoneId", "description": "ID of the Zone", "required": true, "type": "string" }, { "in": "body", "name": "Devices", "description": "Devices to be added to the Zone", "required": true, "schema": { "$ref": "#/definitions/baseListId" } } ], "responses": { "200": { "description": "The list of Devices associated with the Zone", "schema": { "type": "array", "items": { "$ref": "#/definitions/DeviceBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } }, "delete": { "tags": [ "zones", "devices", "adminRight" ], "description": "Removes Devices from the Zone", "parameters": [ { "in": "path", "name": "zoneId", "description": "ID of the Zone", "required": true, "type": "string" }, { "in": "body", "name": "Devices", "description": "Devices to be removed from the Zone", "required": true, "schema": { "$ref": "#/definitions/baseListId" } } ], "responses": { "200": { "description": "The list of Devices associated with the Zone", "schema": { "type": "array", "items": { "$ref": "#/definitions/DeviceBase" } } }, "default": { "description": "Server error", "schema": { "$ref": "#/definitions/Error" } } } } } }, "definitions": { "baseObject": { "type": "object", "properties": { "Id": { "type": "string", "description": "ID of an entity (often UUID, sometimes integer)" }, "Name": { "type": "string" }, "ModifiedGuid": { "$ref": "#/definitions/UUID" } } }, "baseObjectId": { "type": "object", "properties": { "Id": { "type": "string", "description": "ID of an entity (often UUID, sometimes integer)" } } }, "basePOST": { "type": "object", "properties": { "Name": { "type": "string", "description": "Name of a new entity" } } }, "basePOSTwithCompany": { "type": "object", "properties": { "Name": { "type": "string", "description": "Name of a new entity" }, "Company": { "$ref": "#/definitions/baseObjectId" } } }, "baseListId": { "type": "array", "items": { "properties": { "Id": { "type": "string", "description": "ID of an entity" } } } }, "baseState": { "type": "object", "properties": { "When": { "type": "string", "format": "date-time" }, "State": { "type": "integer" } } }, "Error": { "required": [ "errorCode", "message" ], "properties": { "errorCode": { "type": "string" }, "message": { "type": "string" } } }, "UUID": { "type": "string", "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$" }, "AccessRule": { "type": "object", "properties": { "Id": { "type": "integer" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "ModifiedGuid": { "$ref": "#/definitions/UUID" }, "Group": { "$ref": "#/definitions/baseObject" }, "Zone": { "$ref": "#/definitions/baseObject" }, "TimeProfile": { "$ref": "#/definitions/baseObject" } } }, "CommonSetting": { "type": "object", "properties": { "Id": { "type": "string" }, "Localization": { "$ref": "#/definitions/baseObject" }, "WeekViewMode": { "type": "string" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "ModifiedGuid": { "type": "string" } } }, "Company": { "type": "object", "properties": { "Id": { "type": "string" }, "Name": { "type": "string" }, "MonitoredUsers": { "type": "integer" }, "CurrentlyMonitoredUsers": { "type": "integer" }, "MonitoredUsersLeft": { "type": "integer" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "ModifiedGuid": { "type": "string" }, "CommonSetting": { "$ref": "#/definitions/CommonSetting" }, "AttendanceSetting": { "$ref": "#/definitions/AttendanceSetting" }, "Zones": { "type": "array", "items": { "$ref": "#/definitions/baseObject" } }, "Customer": { "$ref": "#/definitions/baseObject" }, "Holidays": { "type": "array", "items": { "$ref": "#/definitions/Holiday" } } } }, "CompanyBase": { "type": "object", "properties": { "Id": { "type": "string" }, "Customer": { "$ref": "#/definitions/baseObject" }, "Name": { "type": "string" }, "MonitoredUsers": { "type": "integer" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "ModifiedGuid": { "type": "string" } } }, "CompanyWithDevice": { "type": "object", "properties": { "Id": { "type": "string" }, "Name": { "type": "string" }, "ModifiedGuid": { "type": "string" }, "Devices": { "type": "array", "items": { "$ref": "#/definitions/baseObject" } } } }, "Holiday": { "type": "object", "properties": { "Company": { "$ref": "#/definitions/baseObjectId" }, "Id": { "type": "string" }, "Localization": { "$ref": "#/definitions/baseObjectId" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "ModifiedGuid": { "type": "string" }, "Name": { "type": "string" }, "ValidFrom": { "type": "null" }, "ValidTo": { "type": "null" }, "IsRepeatable": { "type": "boolean" }, "Date": { "type": "string" } } }, "AttendanceSetting": { "type": "object", "properties": { "Id": { "type": "string" }, "Company": { "$ref": "#/definitions/baseObjectId" }, "DayFrom": { "type": "string", "description": "the time e.g.:\"08:00:00\"" }, "DayTo": { "type": "string", "description": "the time e.g.:\"16:00:00\"" }, "WorkingDays": { "type": "array", "items": { "$ref": "#/definitions/WorkingDay" } }, "WorkingHoursFrom": { "type": "string", "format": "date", "description": "the time e.g.:\"08:00:00\"" }, "WorkingHoursTo": { "type": "string", "description": "the time e.g.:\"16:00:00\"" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "ModifiedGuid": { "type": "string" } } }, "WorkingDay": { "type": "object", "properties": { "Ordinal": { "type": "integer" }, "IsBusinessDay": { "type": "boolean" } } }, "AttendaceSummary": { "type": "object", "properties": { "Period": { "type": "string" }, "Start": { "type": "string" }, "End": { "type": "string" }, "PeriodHours": { "type": "string" }, "Saldo": { "type": "string" }, "WorkedHours": { "type": "string" }, "WorkingHours": { "type": "string" } } }, "Device": { "type": "object", "properties": { "ButtonCount": { "type": "integer" }, "Camera": { "type": "boolean" }, "CamLogs": { "type": "boolean" }, "KeyBoard": { "type": "integer" }, "Id": { "type": "integer" }, "Customer": { "$ref": "#/definitions/baseObject" }, "Zone": { "$ref": "#/definitions/baseObject" }, "Name": { "type": "string" }, "SerialNumber": { "type": "string" }, "MACAddress": { "type": "string" }, "IPAddress": { "type": "string", "format": "IPAddress" }, "Port": { "type": "number" }, "ProductName": { "type": "string" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "ModifiedGuid": { "type": "string" }, "Login": { "type": "string" }, "Password": { "type": "string", "format": "password" }, "Synchronization": { "type": "string", "format": "date-time" }, "NtpClient": { "type": "object", "properties": { "Id": { "type": "integer" }, "TimeZone": { "$ref": "#/definitions/baseObjectId" }, "ServerAddress": { "type": "string" }, "TimeZoneString": { "type": "string" }, "ModifiedGuid": { "type": "string" } } }, "IsOnline": { "type": "boolean" }, "IsEnabled": { "type": "boolean" }, "Display": { "type": "boolean" }, "IsLicensedDevice": { "type": "boolean" }, "Status": { "type": "integer" }, "Buttons": { "type": "array", "items": { "$ref": "#/definitions/Button" } }, "Keypad": { "type": "array", "items": { "$ref": "#/definitions/Keypad" } }, "Phonebook": { "$ref": "#/definitions/DisplayPhonebook" }, "NameTags": { "$ref": "#/definitions/DisplayNameTags" }, "SoftwareVersion": { "type": "string" }, "BulkEditState": { "$ref": "#/definitions/baseState" }, "UploadState": { "$ref": "#/definitions/baseState" }, "BackupState": { "$ref": "#/definitions/baseState" }, "RestoreState": { "$ref": "#/definitions/baseState" } } }, "DevicePassword": { "type": "object", "properties": { "Password": { "type": "string", "format": "password" } } }, "DeviceScan": { "type": "object", "properties": { "IPAddress": { "type": "string", "format": "IPAddress" }, "Name": { "type": "string" }, "Port": { "type": "number" }, "ProductName": { "type": "string" }, "SerialNumber": { "type": "string" }, "IsInSystem": { "type": "boolean" } } }, "DeviceBase": { "type": "object", "properties": { "Customer": { "$ref": "#/definitions/baseObject" }, "Zone": { "$ref": "#/definitions/baseObject" }, "SerialNumber": { "type": "string" }, "MACAddress": { "type": "string" }, "IPAddress": { "type": "string" }, "Port": { "type": "string" }, "ButtonCount": { "type": "string" }, "Camera": { "type": "string" }, "KeyBoard": { "type": "string" }, "Login": { "type": "string" }, "Password": { "type": "string" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "Id": { "type": "string" }, "Name": { "type": "string" }, "ModifiedGuid": { "type": "string" }, "Synchronization": { "type": "string" }, "ProductName": { "type": "string" } } }, "Button": { "type": "object", "properties": { "Id": { "type": "integer" }, "Device": { "$ref": "#/definitions/baseObject" }, "User": { "$ref": "#/definitions/baseObject" }, "Button": { "type": "integer" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "ModifiedGuid": { "type": "string" } } }, "DisplayButton": { "type": "object", "properties": { "Id": { "type": "string" }, "Name": { "type": "string" }, "ModifiedGuid": { "type": "string" } } }, "DisplayPhonebook": { "type": "object", "description": "HIP Phonebook object" }, "DisplayNameTags": { "type": "object", "properties": { "button1": { "$ref": "#/definitions/DisplayButton" }, "button2": { "$ref": "#/definitions/DisplayButton" }, "button3": { "$ref": "#/definitions/DisplayButton" }, "button4": { "$ref": "#/definitions/DisplayButton" } } }, "Keypad": { "type": "object", "properties": { "Id": { "type": "integer" }, "Device": { "$ref": "#/definitions/baseObject" }, "User": { "$ref": "#/definitions/baseObject" }, "VirtualNumber": { "type": "string" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "ModifiedGuid": { "$ref": "#/definitions/UUID" } } }, "BackupBase": { "type": "object", "properties": { "Id": { "type": "integer" }, "Modified": { "type": "string" }, "ModifiedGuid": { "$ref": "#/definitions/UUID" } } }, "CopyConfigItems": { "description": "HIP configuration object", "type": "array", "items": { "type": "string" } }, "CopyConfig": { "type": "object", "properties": { "SerialNumbers": { "type": "array", "items": { "type": "string" }, "description": "array of strings" }, "SelectedItems": { "$ref": "#/definitions/CopyConfigItems" } } }, "DeviceStatus": { "type": "object", "properties": { "Id": { "type": "integer" }, "Name": { "type": "string" }, "SerialNumber": { "type": "string" }, "MACAddress": { "type": "string" }, "IPAddress": { "type": "string", "format": "IPAddress" }, "SoftwareVersion": { "type": "string" }, "IsOnline": { "type": "boolean" }, "IsEnabled": { "type": "boolean" }, "Status": { "type": "integer" }, "IsLicensedDevice": { "type": "boolean" }, "AudioLoopTest": { "$ref": "#/definitions/AudioLoopTestStatus" }, "Door": { "$ref": "#/definitions/DoorStatus" }, "Sip1": { "$ref": "#/definitions/SipStatus" }, "Sip2": { "$ref": "#/definitions/SipStatus" }, "TamperSwitch": { "$ref": "#/definitions/TamperSwitchStatus" }, "UpTime": { "$ref": "#/definitions/UpTimeDuration" } } }, "AudioLoopTestStatus": { "type": "object", "properties": { "Status": { "type": "integer" }, "Time": { "type": "string" } } }, "DoorStatus": { "type": "object", "properties": { "Status": { "type": "integer" }, "Time": { "type": "string" } } }, "SipStatus": { "type": "object", "properties": { "Status": { "type": "integer" }, "Time": { "type": "string" }, "FailureReason": { "type": "string" } } }, "TamperSwitchStatus": { "type": "object", "properties": { "Status": { "type": "integer" }, "Time": { "type": "string" } } }, "UpTimeDuration": { "type": "object", "properties": { "days": { "type": "integer" }, "hours": { "type": "integer" }, "mins": { "type": "integer" }, "secs": { "type": "integer" } } }, "MonitorSettings": { "type": "object", "properties": { "columns": { "type": "array", "items": { "$ref": "#/definitions/MonitorSettingsColumnItem" } }, "hiddenDevices": { "type": "array", "items": { "$ref": "#/definitions/baseObjectId" } } } }, "MonitorSettingsColumnItem": { "type": "object", "properties": { "Value": { "type": "integer" } } }, "Group": { "type": "object", "properties": { "Id": { "type": "string" }, "Company": { "$ref": "#/definitions/baseObject" }, "Name": { "type": "string" }, "Image": { "type": "string" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "ModifiedGuid": { "type": "string" }, "Users": { "type": "array", "items": { "$ref": "#/definitions/baseObject" } }, "Visitors": { "type": "array", "items": { "$ref": "#/definitions/baseObject" } }, "Zones": { "type": "array", "items": { "$ref": "#/definitions/baseObject" } } } }, "GroupBase": { "type": "object", "properties": { "Id": { "type": "string" }, "Name": { "type": "string" }, "ModifiedGuid": { "type": "string" } } }, "LoginInfo": { "type": "object", "properties": { "Id": { "$ref": "#/definitions/UUID" }, "Name": { "type": "string" }, "Login": { "type": "string" }, "ModifiedGuid": { "type": "string" }, "Localization": { "type": "integer" }, "ShowWizard": { "type": "boolean" }, "IsAttendanceMonitoring": { "type": "boolean" }, "Right": { "type": "object", "properties": { "IsUserManager": { "type": "boolean" }, "IsAttendanceManager": { "type": "boolean" }, "IsAccessManager": { "type": "boolean" }, "IsAdmin": { "type": "boolean" }, "IsSysAdmin": { "type": "boolean" } } } } }, "DashboardInfo": { "type": "object", "properties": { "Companies": { "type": "integer" }, "Users": { "type": "integer" }, "PresentUsers": { "type": "integer" }, "Groups": { "type": "integer" }, "Zones": { "type": "integer" }, "DevicesOnline": { "type": "integer" }, "DevicesLoginFailed": { "type": "integer" }, "DevicesOffline": { "type": "integer" }, "TimeProfiles": { "type": "integer" }, "AccessRules": { "type": "integer" }, "MonitoredUsers": { "type": "integer" }, "MyCurrentlyMonitoredUsers": { "type": "integer" }, "CurrentlyMonitoredUsers": { "type": "integer" }, "MaxDevices": { "type": "integer" }, "MaxUsers": { "type": "integer" } } }, "EventSnapshot": { "type": "object", "properties": { "EventLogId": { "type": "integer" }, "EventType": { "type": "integer" }, "Device": { "$ref": "#/definitions/baseObjectId" }, "Snapshots": { "type": "array", "items": { "$ref": "#/definitions/Snapshot" } } } }, "Snapshot": { "type": "object", "properties": { "Timestamp": { "type": "string" }, "Snapshot": { "type": "string", "format": "byte" } } }, "Attachment": { "type": "object", "properties": { "EventSnapshot": { "$ref": "#/definitions/EventSnapshot" }, "SynchronizationLog": { "type": "string", "format": "file-csv" } } }, "AttendanceMode": { "type": "object", "properties": { "IsAttendanceSpecifyingDirection": { "type": "boolean" }, "ModifiedGuid": { "$ref": "#/definitions/UUID" } } }, "AttendanceLog": { "type": "object", "properties": { "Id": { "type": "integer" }, "Identification": { "type": "string" }, "EventType": { "$ref": "#/definitions/baseObjectId" }, "HasAttachment": { "type": "boolean" }, "ZoneTime": { "type": "string" }, "IsValid": { "type": "boolean" }, "IsCheckIn": { "type": "boolean" }, "IsCheckOut": { "type": "boolean" }, "Device": { "$ref": "#/definitions/baseObject" }, "User": { "$ref": "#/definitions/baseObject" }, "Zone": { "$ref": "#/definitions/baseObject" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "ModifiedGuid": { "$ref": "#/definitions/UUID" } } }, "License": { "type": "object", "properties": { "LicenseDeviceSN": { "type": "string" }, "Expiration": { "type": "string" }, "ExploitedUsers": { "type": "integer" }, "MaxUsers": { "type": "integer" }, "ExploitedDevices": { "type": "integer" }, "MaxDevices": { "type": "integer" }, "LicenseUpdated": { "type": "string" }, "LDAPEnabled": { "type": "boolean" }, "DataSyncEnabled": { "type": "boolean" } } }, "SystemLog": { "type": "object", "properties": { "Id": { "type": "integer" }, "Action": { "type": "string" }, "Description": { "type": "string" }, "LogType": { "type": "integer" }, "Device": { "$ref": "#/definitions/baseObjectId" }, "User": { "$ref": "#/definitions/baseObjectId" }, "Zone": { "$ref": "#/definitions/baseObjectId" }, "EventLog": { "$ref": "#/definitions/baseObjectId" }, "HasSnapshot": { "type": "boolean" }, "Severity": { "type": "integer" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "ModifiedGuid": { "$ref": "#/definitions/UUID" } } }, "Upgrade": { "type": "object", "properties": { "Host": { "type": "string", "format": "url" }, "ModifiedGuid": { "$ref": "#/definitions/UUID" } } }, "NewUpgrade": { "type": "object", "properties": { "Archive": { "type": "string", "description": "The upgrade file \"ac.zip\"" }, "Date": { "type": "string" }, "Password": { "type": "null" }, "User": { "type": "null" }, "Version": { "type": "string" }, "Wiki": { "type": "string", "format": "url" } } }, "Smtp": { "type": "object", "properties": { "DefaultAddressFrom": { "type": "string", "format": "email" }, "Enabled": { "type": "boolean" }, "Host": { "type": "string" }, "HostPassword": { "type": "string", "format": "password" }, "HostUserName": { "type": "string" }, "Port": { "type": "integer" }, "Ssl": { "type": "boolean" }, "ModifiedGuid": { "$ref": "#/definitions/UUID" } } }, "MobileKey": { "type": "object", "properties": { "ValidityPeriod": { "type": "integer" }, "Companies": { "type": "array", "items": { "$ref": "#/definitions/CompanyWithDevice" } } } }, "TimeProfile": { "type": "object", "properties": { "Days": { "type": "array", "items": { "$ref": "#/definitions/Day" } }, "Customer": { "$ref": "#/definitions/baseObjectId" }, "ActivationCode": { "type": "string" }, "DeactivationCode": { "type": "string" }, "Id": { "$ref": "#/definitions/UUID" }, "Name": { "type": "string" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "ModifiedGuid": { "$ref": "#/definitions/UUID" } } }, "Day": { "type": "object", "properties": { "DayOfWeek": { "type": "integer" }, "Enabled": { "type": "boolean" }, "TimeProfile": { "$ref": "#/definitions/baseObjectId" }, "Intervals": { "type": "array", "items": { "$ref": "#/definitions/Interval" } } } }, "Interval": { "type": "object", "properties": { "From": { "type": "string", "format": "time" }, "To": { "type": "string", "format": "time" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "ModifiedGuid": { "$ref": "#/definitions/UUID" }, "Id": { "type": "integer" }, "TimeProfile": { "$ref": "#/definitions/baseObjectId" } } }, "UserAttendanceDetail": { "type": "object", "properties": { "appointments": { "type": "array", "items": { "$ref": "#/definitions/Appointment" } }, "balance": { "type": "number" }, "periodHours": { "type": "number" }, "workedHours": { "type": "number" } } }, "UserAttendanceDay": { "type": "object", "properties": { "Appointments": { "type": "array", "items": { "$ref": "#/definitions/Appointment" } } } }, "Appointment": { "type": "object", "properties": { "User": { "$ref": "#/definitions/baseObjectId" }, "Date": { "type": "string" }, "DayBalance": { "type": "number" }, "From": { "type": "string" }, "To": { "type": "string" }, "Holiday": { "type": "boolean" }, "Hours": { "type": "integer" }, "IsAllDayEvent": { "type": "boolean" }, "isEdited": { "type": "boolean" }, "ModifiedBy": { "type": "string" }, "ModifiedGuid": { "$ref": "#/definitions/UUID" } } }, "Card": { "type": "object", "properties": { "Description": { "type": "string" }, "Id": { "type": "string" }, "Identification": { "type": "string" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "ModifiedGuid": { "type": "string" }, "User": { "$ref": "#/definitions/baseObjectId" } } }, "MobileKeyUser": { "type": "object", "properties": { "AuthId": { "type": "string" }, "Pairing": { "$ref": "#/definitions/MobileKeyPairingState" }, "Settings": { "$ref": "#/definitions/MobileKeyUserSettings" } } }, "MobileKeyUserSettings": { "type": "object", "properties": { "AvailableDevices": { "type": "array", "items": { "$ref": "#/definitions/baseObject" } }, "ValidityPeriod": { "type": "integer" } } }, "MobileKeyPairingState": { "type": "object", "properties": { "PairingTimeUntil": { "type": "string" }, "PairingType": { "type": "string", "description": "Pairing BT type: device, dongle" }, "Pin": { "type": "string" }, "State": { "type": "string", "description": "Pairing BT state: unknown, inactive, pending, expired, paired" } } }, "Code": { "type": "object", "properties": { "Id": { "type": "integer" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "ModifiedGuid": { "type": "string" }, "Ordinal": { "type": "integer" }, "SwitchCode": { "type": "string" }, "User": { "$ref": "#/definitions/baseObjectId" } } }, "User": { "type": "object", "properties": { "Company": { "$ref": "#/definitions/baseObject" }, "Right": { "$ref": "#/definitions/Right" }, "Id": { "$ref": "#/definitions/UUID" }, "Name": { "type": "string" }, "Email": { "type": "string" }, "ModifiedGuid": { "$ref": "#/definitions/UUID" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "Login": { "type": "string" }, "ActivationCode": { "type": "string" }, "DeactivationCode": { "type": "string" }, "Image": { "type": "string", "format": "binary" }, "Thumbnail": { "type": "string", "format": "binary" }, "IsDoubleAuthentication": { "type": "string" }, "IsAttendanceMonitoring": { "type": "boolean" }, "VirtualNumber": { "type": "string" }, "EmployeeID": { "type": "string" }, "Groups": { "type": "array", "items": { "$ref": "#/definitions/baseObject" } }, "Cards": { "type": "array", "items": { "$ref": "#/definitions/Card" } }, "MobileKey": { "$ref": "#/definitions/MobileKeyUser" }, "PhoneNumbers": { "type": "array", "items": { "$ref": "#/definitions/PhoneNumber" } }, "Codes": { "type": "array", "items": { "$ref": "#/definitions/Code" } }, "Settings": { "$ref": "#/definitions/UserSettings" }, "AttendaceSummary": { "$ref": "#/definitions/AttendaceSummary" }, "Zones": { "type": "array", "items": { "$ref": "#/definitions/baseObject" } }, "RestrictedAccess": { "$ref": "#/definitions/RestrictedAccess" } } }, "UserBase": { "type": "object", "properties": { "Id": { "$ref": "#/definitions/UUID" }, "Name": { "type": "string" }, "ModifiedGuid": { "type": "string" } } }, "Presence": { "type": "object", "properties": { "User": { "$ref": "#/definitions/baseObject" }, "CompanyName": { "type": "string" }, "GroupNames": { "type": "string" }, "PhoneNumber": { "type": "string" }, "Email": { "type": "string" }, "LastSeen": { "$ref": "#/definitions/LastSeen" } } }, "LastSeen": { "type": "object", "properties": { "Time": { "type": "string" }, "DeviceName": { "type": "string" }, "ZoneName": { "type": "string" } } }, "UserSettings": { "type": "object", "properties": { "Id": { "type": "integer" }, "User": { "$ref": "#/definitions/baseObjectId" }, "Localization": { "$ref": "#/definitions/baseObjectId" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "ModifiedGuid": { "type": "string" }, "ShowWizard": { "type": "boolean" }, "LogsCount": { "type": "integer" }, "FromExternalSystem": { "type": "boolean" }, "MonitorSettings": { "$ref": "#/definitions/MonitorSettings" } } }, "VisitorCard": { "type": "object", "properties": { "Id": { "$ref": "#/definitions/UUID" }, "Company": { "$ref": "#/definitions/baseObject" }, "Name": { "type": "string" }, "Identification": { "type": "string" }, "Visitor": { "$ref": "#/definitions/Visitor" }, "ModifiedGuid": { "$ref": "#/definitions/UUID" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "Groups": { "type": "array", "items": { "$ref": "#/definitions/baseObject" } }, "AvailableZones": { "type": "array", "items": { "$ref": "#/definitions/baseObject" } } } }, "Visitor": { "type": "object", "properties": { "Id": { "type": "integer" }, "Name": { "type": "string" }, "Reason": { "type": "string" }, "From": { "type": "string" }, "To": { "type": "string" }, "ModifiedGuid": { "$ref": "#/definitions/UUID" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" } } }, "RestrictedAccess": { "type": "object", "properties": { "User": { "$ref": "#/definitions/baseObjectId" }, "From": { "type": "string" }, "IsFromEnabled": { "type": "boolean" }, "To": { "type": "string" }, "IsToEnabled": { "type": "boolean" }, "Id": { "type": "integer" }, "ModifiedGuid": { "type": "string" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" } } }, "Right": { "type": "object", "properties": { "Groups": { "type": "array", "items": { "$ref": "#/definitions/baseObject" } }, "IsAccessManager": { "type": "boolean" }, "IsAdmin": { "type": "boolean" }, "IsAttendanceManager": { "type": "boolean" }, "IsSysAdmin": { "type": "boolean" }, "IsUserManager": { "type": "boolean" }, "User": { "$ref": "#/definitions/baseObjectId" } } }, "PhoneNumber": { "type": "object", "properties": { "User": { "$ref": "#/definitions/baseObjectId" }, "TimeProfile": { "$ref": "#/definitions/baseObject" }, "Ordinal": { "type": "integer" }, "Number": { "type": "string" }, "GroupCall": { "type": "boolean" }, "StationName": { "type": "string", "format": "IPAddress" }, "Id": { "type": "integer" }, "ModifiedGuid": { "type": "string" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" } } }, "Zone": { "type": "object", "properties": { "Id": { "type": "string" }, "Name": { "type": "string" }, "ZonalCode": { "type": "string" }, "TimeProfile": { "$ref": "#/definitions/baseObject" }, "ModifiedGuid": { "type": "string" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "Customer": { "$ref": "#/definitions/baseObjectId" }, "Devices": { "type": "array", "items": { "$ref": "#/definitions/baseObject" } }, "Companies": { "type": "array", "items": { "$ref": "#/definitions/baseObject" } } } }, "ZoneBase": { "type": "object", "properties": { "Id": { "type": "string" }, "Name": { "type": "string" }, "ModifiedGuid": { "type": "string" } } }, "Notification": { "type": "object", "properties": { "Id": { "type": "integer" }, "Customer": { "$ref": "#/definitions/baseObjectId" }, "Users": { "type": "array", "items": { "$ref": "#/definitions/User" } }, "Devices": { "type": "array", "items": { "$ref": "#/definitions/baseObject" } }, "Type": { "type": "string" }, "Name": { "type": "string" }, "Emails": { "type": "string" }, "IsEnabled": { "type": "boolean" }, "IsEmail": { "type": "boolean" }, "IsDesktop": { "type": "boolean" }, "BundleId": { "type": "string" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "ModifiedGuid": { "type": "string" } } }, "SnapshotSetting": { "type": "object", "properties": { "Id": { "type": "integer" }, "Customer": { "$ref": "#/definitions/baseObjectId" }, "EventType": { "$ref": "#/definitions/baseObject" }, "Devices": { "type": "array", "items": { "$ref": "#/definitions/baseObject" } }, "Name": { "type": "string" }, "IsEnabled": { "type": "boolean" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "ModifiedGuid": { "type": "string" } } }, "LdapSettings": { "type": "object", "properties": { "Id": { "type": "integer" }, "Company": { "$ref": "#/definitions/baseObjectId" }, "Host": { "type": "string" }, "Port": { "type": "integer" }, "Username": { "type": "string" }, "Password": { "type": "string" }, "BaseDN": { "type": "string" }, "UseSSL": { "type": "boolean" }, "NestedSearch": { "type": "boolean" }, "SyncTime": { "type": "string" }, "LastSyncTime": { "type": "string" }, "LastSyncSuccess": { "type": "boolean" }, "Modified": { "type": "string" }, "ModifiedBy": { "type": "string" }, "ModifiedGuid": { "$ref": "#/definitions/UUID" } } }, "LdapStatus": { "type": "object", "properties": { "Id": { "type": "integer" }, "IsSynchronizing": { "type": "boolean" } } }, "RemoteStorage": { "type": "object", "properties": { "Address": { "description": "URL of CSV file on remote FTP server", "type": "string" }, "UserName": { "description": "User name to log-in to FTP server", "type": "string" }, "Password": { "description": "Password to log-in to FTP server (write only - void if read)", "type": "string" } } }, "AutomaticSync": { "type": "object", "properties": { "Enabled": { "description": "If the periodic synchronization is enabled", "type": "boolean" }, "From": { "description": "The date and time of the first periodic synchronization (if it is in the past - synchronize immediately)", "type": "string" }, "Interval": { "description": "The number of minutes between two consequent periodic synchronizations", "type": "integer" } } }, "SynchronizationSettings": { "type": "object", "properties": { "RemoteStorage": { "$ref": "#/definitions/RemoteStorage" }, "AutomaticSync": { "$ref": "#/definitions/AutomaticSync" }, "LastSyncTime": { "description": "The date and time of the last synchronization", "type": "string" }, "SyncState": { "description": "The status of the last synchronization (0-unknown, 1-in progress, 2-successful, 3-failed)", "type": "integer" } } }, "VerificationPair": { "type": "object", "properties": { "key": { "description": "Identificator of Subject to be verified", "type": "string" }, "verificationText": { "description": "The text representation of the Captcha", "type": "string" } } }, "VerificationKey": { "type": "object", "properties": { "key": { "description": "Identificator of the Subject to be verified", "type": "string" } } }, "VerificationObject": { "type": "object", "properties": { "verificationImage": { "description": "The image representation of the Captcha", "type": "string", "format": "binary" } } } } }