S-secure-api

S-secure-api

118 views 07/11/2018 integrador 0

{ swagger: 2.0, info: { version: 1.0.0, title: SAM API }, host: sam.senior.com.br:80, basePath: /v1, schemes: [ http, https ], paths: { /recognition/faceverification/{similarity}/{personId}: { post: { description: Verify the person identity from a photo, tags: [ Face Recognition ], produces: [ application/json ], consumes: [ multipart/form-data ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: similarity, description: Similarity percent, required: true, type: integer }, { in: path, name: personId, description: Id of a person, required: true, type: integer, format: int64 }, { in: formData, name: file, description: The person photo, required: true, type: file } ], responses: { 200: { description: Recognition result, schema: { $ref: #/definitions/RecognitionResult } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Person or photo not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /recognition/facematch/{similarity}: { post: { description: Search a person from a visit schedule photo, tags: [ Face Recognition ], produces: [ application/json ], consumes: [ multipart/form-data ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: similarity, description: Similarity percent, required: true, type: integer }, { in: formData, name: file, description: The person photo, required: true, type: file } ], responses: { 200: { description: Recognition result, schema: { type: array, items: { $ref: #/definitions/RecognitionResult } } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /recognition/faceindex/{personId}: { post: { description: Index a person photo with a person ID, tags: [ Face Recognition ], produces: [ application/json ], consumes: [ multipart/form-data ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: personId, description: Person identification, required: true, type: integer, format: int64 }, { in: formData, name: file, description: The person photo, required: true, type: file } ], responses: { 200: { description: Index result, schema: { type: array, items: { $ref: #/definitions/FaceIndexResult } } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /recognition/facedelete/{personId}: { post: { description: Delete faces associated with the person identification, tags: [ Face Recognition ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: personId, description: Person identification, required: true, type: integer, format: int64 } ], responses: { 200: { description: Face delete result, schema: { type: array, items: { $ref: #/definitions/FaceDeleteResult } } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /recognition/facecheck/{similarity}/{personId}: { post: { description: Verify the person identity from two photos, tags: [ Face Recognition ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: similarity, description: Similarity percent, required: true, type: integer }, { in: path, name: personId, description: Id of a person, required: true, type: integer, format: int64 }, { in: body, name: photos, description: The person photos, required: true, schema: { $ref: #/definitions/FaceCheckParams } } ], responses: { 200: { description: Recognition result, schema: { $ref: #/definitions/RecognitionResult } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/incident/{incidentId}/view: { post: { description: Records a new view to incident, based on request user, using server date-time, tags: [ Monitoring ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: incidentId, description: Id of incident, required: true, type: integer, format: int64 } ], responses: { 200: { description: Incident view, schema: { $ref: #/definitions/IncidentView } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/incident/{id}: { get: { description: Return a incident, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Incident Id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a incident, schema: { $ref: #/definitions/Incident } }, 401: { description: Token is invalid or expired }, 404: { description: Incident not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /tenant: { get: { description: Return the current tenant of User, tags: [ Tenant ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: The tenant, schema: { $ref: #/definitions/Tenant } }, 401: { description: token is invalid }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /tenant/license: { get: { description: Return the current tenant license info, tags: [ Tenant ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Tenant license info, schema: { $ref: #/definitions/TenantLicenseInfo } }, 401: { description: token is invalid }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /tenant/module/usage: { get: { description: Return the current tenant modules usage, tags: [ Tenant ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Info about usage of modules, schema: { $ref: #/definitions/ModulesUsage } }, 401: { description: token is invalid }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /tenant/application/usage: { get: { description: Return the current tenant application usage, tags: [ Tenant ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Info about usage of application, schema: { $ref: #/definitions/ApplicationUsage } }, 401: { description: token is invalid }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /cctvproxy: { post: { description: Create a cctv proxy when it does not exists, tags: [ Cctv Proxy ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Cctv Proxy, description: Cctv Proxy to be created, required: true, schema: { $ref: #/definitions/BasicCctvProxy } } ], responses: { 200: { description: Cctv Proxy, schema: { $ref: #/definitions/BasicCctvProxy } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, get: { description: Return all the cctv proxies, tags: [ Cctv Proxy ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: The cctv proxies, schema: { type: array, items: { $ref: #/definitions/BasicCctvProxy } } }, 401: { description: token is invalid }, 403: { description: Operation denied }, 404: { description: Cctv Proxy not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a Cctv Proxy, tags: [ Cctv Proxy ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Cctv Proxy, description: Cctv Proxy to be updated, required: true, schema: { $ref: #/definitions/BasicCctvProxy } } ], responses: { 200: { description: Cctv Proxy updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Cctv Proxy not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /cctvproxy/{id}: { get: { description: Return the data from the cctv proxy, tags: [ Cctv Proxy ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Cctv Proxy Id, required: true, type: integer, format: int64 } ], responses: { 200: { description: The data from the cctv proxy, schema: { $ref: #/definitions/CctvProxy } }, 401: { description: token is invalid }, 403: { description: Operation denied }, 404: { description: Cctv Proxy not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a Cctv Proxy, tags: [ Cctv Proxy ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Cctv Proxy ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: Cctv Proxy deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Cctv Proxy not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /blueprint: { post: { description: Create a blueprint when it does not exists, tags: [ Blueprint ], consumes: [ multipart/form-data ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: formData, name: file, description: The blueprint image, required: true, type: file }, { in: formData, name: blueprintId, description: The blueprint identifier, required: false, type: integer, format: int64 }, { in: formData, name: localId, description: Id of a physical location, required: true, type: integer, format: int64 } ], responses: { 200: { description: Blueprint image link, schema: { $ref: #/definitions/Blueprint } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Blueprint not found or PhysicalLocation not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, get: { description: Return all the blueprints, tags: [ Blueprint ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: The blueprint, schema: { type: array, items: { $ref: #/definitions/Blueprint } } }, 401: { description: token is invalid }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /blueprint/{id}: { get: { description: Return a blueprint, tags: [ Blueprint ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Blueprint ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a blueprint, schema: { $ref: #/definitions/Blueprint } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Blueprint not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a Blueprint, tags: [ Blueprint ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Blueprint ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: Blueprint deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Blueprint not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /blueprint/{blueprintId}/items: { get: { description: Return all blueprint items, tags: [ Blueprint ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: blueprintId, description: Blueprint ID, required: true, type: integer, format: int64 }, { in: query, name: editMode, description: Not apply range to blueprint edit mode, required: false, type: boolean } ], responses: { 200: { description: Blueprint items, schema: { $ref: #/definitions/BlueprintItems } }, 401: { description: token is invalid }, 404: { description: Blueprint not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /blueprint/{blueprintId}/physicallocation: { post: { description: Associates physical location with a blueprint, tags: [ Blueprint ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: blueprintId, description: Blueprint ID, required: true, type: integer, format: int64 }, { in: body, name: blueprintPhysicalLocationItem, description: Blueprint physical location item to insert, required: true, schema: { $ref: #/definitions/BlueprintPhysicalLocation } } ], responses: { 200: { description: Blueprint physical location created, schema: { $ref: #/definitions/BlueprintPhysicalLocation } }, 401: { description: token is invalid }, 403: { description: Operation denied }, 404: { description: Blueprint or physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update physical location item associated with blueprint, tags: [ Blueprint ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: blueprintId, description: Blueprint ID, required: true, type: integer, format: int64 }, { in: body, name: blueprintPhysicalLocationItem, description: Blueprint physical location item to update, required: true, schema: { $ref: #/definitions/BlueprintPhysicalLocation } } ], responses: { 200: { description: Blueprint physical location updated }, 401: { description: token is invalid }, 403: { description: Operation denied }, 404: { description: Blueprint or physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /blueprint/physicallocation/{physicalLocationItemId}: { delete: { description: Delete physical location item associated with blueprint, tags: [ Blueprint ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: physicalLocationItemId, description: Blueprint physical location item ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: Blueprint physical location item deleted }, 401: { description: token is invalid }, 403: { description: Operation denied }, 404: { description: Blueprint or physical location item not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /blueprint/{blueprintId}/properties: { put: { description: Update the properties from an specific blueprint, tags: [ Blueprint ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: blueprintId, description: Blueprint ID, required: true, type: integer, format: int64 }, { in: body, name: blueprintProperties, description: Blueprint properties to insert, required: true, schema: { $ref: #/definitions/BlueprintProperties } } ], responses: { 200: { description: Blueprint properties updated }, 401: { description: Token is invalid }, 403: { description: Operation denied }, 404: { description: Blueprint not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /blueprint/{blueprintId}/camera: { post: { description: Associates camera with a blueprint, tags: [ Blueprint ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: blueprintId, description: Blueprint ID, required: true, type: integer, format: int64 }, { in: body, name: blueprintCameraItem, description: Blueprint camera item to insert, required: true, schema: { $ref: #/definitions/BlueprintCamera } } ], responses: { 200: { description: Blueprint camera created, schema: { $ref: #/definitions/BlueprintCamera } }, 401: { description: token is invalid }, 403: { description: Operation denied }, 404: { description: Blueprint or camera not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update camera item associated with blueprint, tags: [ Blueprint ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: blueprintId, description: Blueprint ID, required: true, type: integer, format: int64 }, { in: body, name: blueprintCameraItem, description: Blueprint camera item to update, required: true, schema: { $ref: #/definitions/BlueprintCamera } } ], responses: { 200: { description: Blueprint camera updated }, 401: { description: token is invalid }, 403: { description: Operation denied }, 404: { description: Blueprint or camera not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /blueprint/camera/{cameraItemId}: { delete: { description: Delete camera item associated with blueprint, tags: [ Blueprint ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: cameraItemId, description: Blueprint camera item ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: Blueprint camera item deleted }, 401: { description: token is invalid }, 403: { description: Operation denied }, 404: { description: Blueprint or camera item not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /blueprint/{blueprintId}/device: { post: { description: Associates device with a blueprint, tags: [ Blueprint ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: blueprintId, description: Blueprint ID, required: true, type: integer, format: int64 }, { in: body, name: blueprintDeviceItem, description: Blueprint device item to insert, required: true, schema: { $ref: #/definitions/BlueprintDevice } } ], responses: { 200: { description: Blueprint device created, schema: { $ref: #/definitions/BlueprintDevice } }, 401: { description: token is invalid }, 403: { description: Operation denied }, 404: { description: Blueprint or device not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update device item associated with blueprint, tags: [ Blueprint ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: blueprintId, description: Blueprint ID, required: true, type: integer, format: int64 }, { in: body, name: blueprintDeviceItem, description: Blueprint device item to update, required: true, schema: { $ref: #/definitions/BlueprintDevice } } ], responses: { 200: { description: Blueprint device updated }, 401: { description: token is invalid }, 403: { description: Operation denied }, 404: { description: Blueprint or device not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /blueprint/device/{deviceItemId}: { delete: { description: Delete device item associated with blueprint, tags: [ Blueprint ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: deviceItemId, description: Blueprint device item ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: Blueprint device item deleted }, 401: { description: token is invalid }, 403: { description: Operation denied }, 404: { description: Blueprint or device item not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /tag/print: { post: { description: Prints a tag, tags: [ Tag Model ], consumes: [ application/json ], produces: [ application/json, application/pdf ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: tagPrintParams, description: Tag print parameters, required: true, schema: { $ref: #/definitions/TagPrint } } ], responses: { 200: { description: Printed tag on PDF, schema: { type: file } }, 401: { description: token is invalid }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /tag/model: { get: { description: Return all tag model, tags: [ Tag Model ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: The Tag Model, schema: { type: array, items: { $ref: #/definitions/TagModel } } }, 401: { description: token is invalid }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a tag model, update if a tag model exists by id, tags: [ Tag Model ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: tagModelConfig, description: The tag model config, required: true, schema: { type: array, items: { $ref: #/definitions/TagModel } } } ], responses: { 200: { type: array, items: { $ref: #/definitions/TagModel } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /tag/model/logo: { get: { description: Return logo from tag model, tags: [ Tag Model ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: The logo of tag model, schema: { type: file } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Tag model config not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Update Logo, tags: [ Tag Model ], consumes: [ multipart/form-data ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: formData, name: file, description: The logo, required: true, type: file } ], responses: { 200: { description: Logo updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Tag model config not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /virtuallobby/withrange: { get: { description: Fetch active lobbies where user has physical location range., tags: [ Virtual Lobby ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return a active virtual lobby list, schema: { type: array, items: { $ref: #/definitions/VirtualLobby } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /virtuallobby/search: { get: { description: Virtual lobby search by name using partial term where user applies to physical location range., tags: [ Virtual Lobby ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: term, description: Term of virtual lobby description, required: true, type: string, minLength: 3 }, { in: query, name: onlyActive, description: Filter only active virtual lobby, required: true, type: boolean } ], responses: { 200: { description: A array of basic info for search from virtual lobby limited by 10 results, schema: { type: array, items: { $ref: #/definitions/VirtualLobby } } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /virtuallobby/{id}: { get: { description: Return a virtual lobby, tags: [ Virtual Lobby ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Virtual lobby ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a virtual lobby, schema: { $ref: #/definitions/VirtualLobby } }, 401: { description: Token is invalid or expired }, 404: { description: Virtual lobby not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a lobby, tags: [ Virtual Lobby ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Virtual lobby ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: Virtual lobby deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Virtual lobby not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /virtuallobby: { get: { description: Search all lobby, tags: [ Virtual Lobby ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return a virtual lobby, schema: { type: array, items: { $ref: #/definitions/VirtualLobby } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new virtual lobby, Id field will be ignored, tags: [ Virtual Lobby ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Virtuallobby, description: Virtuallobby, required: true, schema: { $ref: #/definitions/VirtualLobby } } ], responses: { 200: { description: Virtual lobby created, schema: { $ref: #/definitions/VirtualLobby } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a Virtual lobby, tags: [ Virtual Lobby ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Virtuallobby, description: Virtuallobby, required: true, schema: { $ref: #/definitions/VirtualLobby } } ], responses: { 200: { description: Virtual lobby updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Virtual lobby not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /virtuallobby/{virtualLobbyId}/availablecameras: { get: { description: Returns a list of available cameras, tags: [ Virtual Lobby ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: virtualLobbyId, description: Virtual lobby ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a camera list, schema: { type: array, items: { $ref: #/definitions/BasicCamera } } }, 401: { description: Token is invalid or expired }, 404: { description: Virtual lobby not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /virtuallobby/{virtualLobbyId}/camera/{cameraId}: { post: { description: Create association between virtual lobby and camera, tags: [ Virtual Lobby ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: virtualLobbyId, description: Virtual lobby identifier, required: true, type: integer, format: int64 }, { in: path, name: cameraId, description: Camera identifier, required: true, type: integer, format: int64 } ], responses: { 200: { description: Association between virtual lobby and camera was created with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Virtual lobby and camera not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Remove association between virtual lobby and camera, tags: [ Virtual Lobby ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: virtualLobbyId, description: Virtual lobby identifier, required: true, type: integer, format: int64 }, { in: path, name: cameraId, description: Camera identifier, required: true, type: integer, format: int64 } ], responses: { 200: { description: Association between virtual lobby and camera was removed with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Virtual lobby and camera not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /virtuallobby/{virtualLobbyId}/cameras: { get: { description: Returns the cameras of a virtual lobby, tags: [ Virtual Lobby ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: virtualLobbyId, description: Virtual lobby ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a camera list, schema: { type: array, items: { $ref: #/definitions/Camera } } }, 401: { description: Token is invalid or expired }, 404: { description: Virtual lobby not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /virtuallobby/execute/action/{actionId}: { post: { description: Execute a action, tags: [ Virtual Lobby ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: actionId, description: Action ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: Action executed }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Action not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /virtuallobby/movement: { post: { description: Generate a virtual lobby movement, tags: [ Virtual Lobby ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: VirtualLobbyMovementRequest, description: VirtualLobbyMovementRequest, required: true, schema: { $ref: #/definitions/VirtualLobbyMovementRequest } } ], responses: { 200: { description: Return a virtual lobby movement, schema: { $ref: #/definitions/VirtualLobbyMovement } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Virtual lobby or access call not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /virtuallobby/movement/out: { post: { description: Generate a virtual lobby movement out, tags: [ Virtual Lobby ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: virtualLobbyExitMovement, description: Movement out from virtual lobby, required: true, schema: { $ref: #/definitions/VirtualLobbyExitMovement } } ], responses: { 200: { description: Return a virtual lobby movement, schema: { $ref: #/definitions/VirtualLobbyMovement } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Virtual lobby or access call not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /virtuallobby/{virtualLobbyId}/action/{actionId}: { delete: { description: Remove an action, tags: [ Virtual Lobby ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: virtualLobbyId, description: Virtual lobby ID, required: true, type: integer, format: int64 }, { in: path, name: actionId, description: Action ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: Action was removed with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Virtual lobby or action not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /virtuallobby/{virtualLobbyId}/action: { post: { description: Create/update an action., tags: [ Virtual Lobby ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: virtualLobbyId, description: Virtual lobby ID, required: true, type: integer, format: int64 }, { in: body, name: Action, description: Action, required: true, schema: { $ref: #/definitions/VirtualLobbyAction } } ], responses: { 200: { description: Return an action, schema: { $ref: #/definitions/VirtualLobbyAction } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Virtual lobby or action not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, get: { description: Return an action list, tags: [ Virtual Lobby ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: virtualLobbyId, description: Virtual lobby ID, required: true, type: integer, format: int64 }, { in: query, name: active, description: Optional parameter to find only active actions, required: false, type: boolean }, { in: query, name: movementTypeRequired, description: Optional parameter to find only actions with movement type filled, required: false, type: boolean } ], responses: { 200: { description: Return a action list, schema: { type: array, items: { $ref: #/definitions/VirtualLobbyAction } } }, 401: { description: Token is invalid or expired }, 404: { description: Virtual lobby not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /virtuallobby/{virtualLobbyId}/people/inside: { get: { description: Returns a list of people who have entered and have not left the site yet., tags: [ Virtual Lobby ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: virtualLobbyId, description: Virtual lobby ID, required: true, type: integer, format: int64 }, { in: query, name: page, description: page, required: true, type: integer }, { in: query, name: pageSize, description: pageSize, required: true, type: integer }, { in: query, name: term, description: Term to filter person by name or document, required: false, type: string } ], responses: { 200: { description: List of people who have entered and have not left the site yet, schema: { type: array, items: { $ref: #/definitions/ListOfVirtualLobbyPeopleInside } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /virtuallobby/{virtualLobbyId}/allpeople/inside: { get: { description: Returns a list of all people who have entered and have not left the site yet., tags: [ Virtual Lobby ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: virtualLobbyId, description: Virtual lobby ID, required: true, type: integer, format: int64 }, { in: query, name: page, description: page, required: true, type: integer }, { in: query, name: pageSize, description: pageSize, required: true, type: integer } ], responses: { 200: { description: List of all people who have entered and have not left the site yet, schema: { $ref: #/definitions/ListOfVirtualLobbyPeopleInside } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /virtuallobby/{virtualLobbyId}/people/associated: { get: { description: Returns a list of people whith access to virtual lobby., tags: [ Virtual Lobby ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: virtualLobbyId, description: Virtual lobby ID, required: true, type: integer, format: int64 }, { in: query, name: term, description: term, required: false, type: string }, { in: query, name: page, description: page, required: true, type: integer }, { in: query, name: pageSize, description: pageSize, required: true, type: integer } ], responses: { 200: { description: List of people who whith access to virtual lobby., schema: { type: array, items: { $ref: #/definitions/ListOfSimplePersonWithPhoto } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /virtuallobby/{virtualLobbyId}/allpeople/associated: { get: { description: Returns a list of all people whith access to virtual lobby., tags: [ Virtual Lobby ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: virtualLobbyId, description: Virtual lobby ID, required: true, type: integer, format: int64 }, { in: query, name: page, description: page, required: true, type: integer }, { in: query, name: pageSize, description: pageSize, required: true, type: integer } ], responses: { 200: { description: List of all people who whith access to virtual lobby., schema: { $ref: #/definitions/ListOfSimplePersonWithPhoto } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /virtuallobby/{virtualLobbyId}/devices: { post: { description: Create or update a devices list associated with the virtual lobby, tags: [ Virtual Lobby ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: virtualLobbyId, description: ID of a virtual lobby, required: true, type: integer, format: int64 }, { in: body, name: DeviceList, description: Return a devices list, required: true, schema: { type: array, items: { $ref: #/definitions/VirtualLobbyDevice } } } ], responses: { 200: { description: Return a devices list associated with the virtual lobby, schema: { type: array, items: { $ref: #/definitions/VirtualLobbyDevice } } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Virtual lobby or device not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, get: { description: Returns a devices list associated to a specific virtual lobby, tags: [ Virtual Lobby ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: virtualLobbyId, description: ID of a virtual lobby, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a devices list, schema: { type: array, items: { $ref: #/definitions/VirtualLobbyDevice } } }, 401: { description: Token is invalid or expired }, 404: { description: Virtual lobby not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /cctv/camera/physicallocation/{physicalLocationId}: { get: { description: Returns camera list given a physical location, tags: [ CCTV ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: physicalLocationId, description: Physical Location ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a camera list, schema: { type: array, items: { $ref: #/definitions/BasicCamera } } }, 401: { description: Token is invalid or expired }, 404: { description: Physical Location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /cctv/camera/pagedsearch: { get: { description: Paged driver search, with filter by DVR Server, tags: [ CCTV ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: serverFilterType, description: Server Filter Type (ALL, SPECIFIC_SERVER, WITHOUT_SERVER), required: true, type: string }, { in: query, name: dVRServerID, description: DVR Server identifier filter, required: false, type: integer, format: int64 }, { in: query, name: page, description: page, required: true, type: integer }, { in: query, name: pageSize, description: pageSize, required: true, type: integer } ], responses: { 200: { description: A list of camera, schema: { type: array, items: { $ref: #/definitions/SearchCamera } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /cctv/camera/search: { get: { description: Search a camera by name, tags: [ CCTV ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: term, description: Term of camera name, required: true, type: string, minLength: 3 } ], responses: { 200: { description: A list of camera, schema: { type: array, items: { $ref: #/definitions/BasicCamera } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /cctv/camera: { post: { description: Create a new Camera, id field will be ignored, tags: [ CCTV ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Camera, description: Camera, required: true, schema: { $ref: #/definitions/Camera } } ], responses: { 200: { description: Camera created with success, schema: { $ref: #/definitions/Camera } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a camera, tags: [ CCTV ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Camera, description: Camera, required: true, schema: { $ref: #/definitions/Camera } }, { in: query, name: removeFromBlueprint, description: Remove blueprint reference, required: false, type: boolean } ], responses: { 200: { description: Camera updated with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /cctv/camera/{id}: { get: { description: Return a camera, tags: [ CCTV ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Camera, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a Camera, schema: { $ref: #/definitions/Camera } }, 401: { description: Token is invalid or expired }, 404: { description: Camera not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a camera, tags: [ CCTV ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Camera Id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Camera deleted with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Camera not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /cctv/camera/{cameraId}/device/{deviceId}: { post: { description: Create association between camera and device (reader or input), tags: [ CCTV ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: cameraId, description: Camera identifier, required: true, type: integer, format: int64 }, { in: path, name: deviceId, description: Device identifier, must be a reader or input, required: true, type: integer, format: int64 } ], responses: { 200: { description: Association between camera and device was created with sucess }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Camera or device not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Remove association between camera and device, tags: [ CCTV ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: cameraId, description: Camera identifier, required: true, type: integer, format: int64 }, { in: path, name: deviceId, description: Device identifier, must be a reader or input, required: true, type: integer, format: int64 } ], responses: { 200: { description: Association between camera and device was removed with sucess }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Camera or device not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /cctv/device/{deviceId}/cameras: { get: { description: Return the cameras of the associated device, tags: [ CCTV ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: deviceId, description: Device Id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return filtered array of cameras, schema: { type: array, items: { $ref: #/definitions/Camera } } }, 401: { description: Token is invalid or expired }, 404: { description: Device not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /cctv/dvr: { get: { description: Return all DVR Servers, tags: [ CCTV ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: A list of DVR Server, schema: { type: array, items: { $ref: #/definitions/DVRServer } } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new DVR Server, id field will be ignored, tags: [ CCTV ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: DVR Server, description: DVR Server, required: true, schema: { $ref: #/definitions/DVRServer } } ], responses: { 200: { description: DVR Server created with success, schema: { $ref: #/definitions/DVRServer } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a DVR Server, tags: [ CCTV ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: DVR Server, description: DVR Server, required: true, schema: { $ref: #/definitions/DVRServer } } ], responses: { 200: { description: DVR Server updated with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: DVR Server not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /cctv/dvr/{id}: { get: { description: Return a DVR Server, tags: [ CCTV ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: DVR Server Id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a DVR Server, schema: { $ref: #/definitions/DVRServer } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: DVR Server not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a DVR Server, tags: [ CCTV ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: DVR Server Id, required: true, type: integer, format: int64 } ], responses: { 200: { description: DVR Server deleted with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: DVR Server not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /cardformat/templates: { get: { description: Return a array of card format template, tags: [ Card Format ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return a list of card format template, schema: { type: array, items: { $ref: #/definitions/CardFormatTemplate } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/physicallocation/{id}/camera: { get: { description: Return a array of camera, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Physical location Id, required: true, type: integer, format: int64 }, { in: query, name: eventDate, description: Date of event (format aaaa-MM-ddTHH:mm:ss+00:00), required: false, type: string } ], responses: { 200: { description: Return a array of camera, schema: { type: array, items: { $ref: #/definitions/Camera } } }, 401: { description: Token is invalid or expired }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/physicallocation/{id}/notification: { get: { description: Return a array of notifications, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Physical location Id, required: true, type: integer, format: int64 }, { in: query, name: limit, description: Limit of registers, required: true, type: integer } ], responses: { 200: { description: Return a array of notifications, schema: { type: array, items: { $ref: #/definitions/MonitoredNotification } } }, 401: { description: Token is invalid or expired }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/physicallocation/{id}/withoutrange: { get: { description: Return a Physical location, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Physical location, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a Physical location, schema: { $ref: #/definitions/MonitoringPhysicalLocation } }, 401: { description: Token is invalid or expired }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/manager/status: { get: { description: Return a array of manager devices with status, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return a array of manager devices with status, schema: { type: array, items: { $ref: #/definitions/ManagerDeviceStatus } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/manager/{managerId}/status/detail: { get: { description: Return a array with detailed status from manager device and its children, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: managerId, description: Manager device id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a array with detailed status from manager device and its children, schema: { type: array, items: { $ref: #/definitions/DeviceDetailedStatus } } }, 401: { description: Token is invalid or expired }, 404: { description: Manager device not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/incident/search: { get: { description: Return a array of filtered procedures, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: orderColumn, description: Order column, (0 for date, 1 for type, 2 for status and 3 for priority), required: true, type: integer }, { in: query, name: order, description: Order filter, (0 for descending order, 1 for ascending order), required: true, type: integer }, { in: query, name: incidentTypeId, description: Incident type id, required: false, type: integer, format: int64 }, { in: query, name: incidentStatus, description: Incident status, required: false, schema: { $ref: #/definitions/IncidentStatus } }, { in: query, name: incidentPriority, description: Incident priority, required: false, schema: { $ref: #/definitions/IncidentPriority } }, { in: query, name: startDate, description: Start date, required: true, type: string }, { in: query, name: endDate, description: End date, required: true, type: string }, { in: query, name: origin, description: Origin, (0 for user, 1 for device), required: false, type: integer }, { in: query, name: originId, description: Origin id, required: false, type: integer, format: int64 }, { in: query, name: physicalLocationId, description: Physical Location id, required: false, type: integer, format: int64 }, { in: query, name: page, description: Page number, required: true, type: integer }, { in: query, name: pageSize, description: Size of page, required: true, type: integer } ], responses: { 200: { description: Return a array of filtered procedures, schema: { type: array, items: { $ref: #/definitions/Incident } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/physicallocation/{id}/incident: { get: { description: Return a array of physical location and device with incident pending, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Physical location Id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a array of physical location and device, schema: { type: array, items: { $ref: #/definitions/PhysicalLocationAndDeviceIncidentStatus } } }, 401: { description: Token is invalid or expired }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/physicallocation/{id}/peoplePresent/total: { get: { description: Return a total of persons in the location, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Physical location Id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return total people in location, schema: { type: integer } }, 401: { description: Token is invalid or expired }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/physicallocation/{id}/peoplePresent: { get: { description: Return persons in the location, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Physical location Id, required: true, type: integer, format: int64 }, { in: query, name: page, description: Page number, required: true, type: integer }, { in: query, name: pageSize, description: Size of page, required: true, type: integer } ], responses: { 200: { description: Return a array of persons in location, schema: { type: array, items: { $ref: #/definitions/personInLocation } } }, 401: { description: Token is invalid or expired }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/physicallocation/{id}/device: { get: { description: Return a array of manager devices, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Physical location Id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a array of device, schema: { type: array, items: { $ref: #/definitions/DeviceStatus } } }, 401: { description: Token is invalid or expired }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/access: { post: { description: Return a array of access events, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: AccessFilter, description: Filter, required: true, schema: { $ref: #/definitions/AccessFilter } } ], responses: { 200: { description: Return a array of access events, schema: { type: array, items: { $ref: #/definitions/RealtimeAccessNotification } } }, 401: { description: Token is invalid or expired }, 404: { description: Some filter not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/access/pagesearch/all: { post: { description: Return a array of all monitored access filtered, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Monitoring Search, description: Monitoring Search, required: true, schema: { $ref: #/definitions/MonitoringSearch } } ], responses: { 200: { description: Return a list of all monitored access, schema: { type: array, items: { $ref: #/definitions/AccessMonitored } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/access/vehicle/pagedsearch: { post: { description: Return a paged array of vehicle access filtered, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: vehicleAccessSearch, description: Vehicle access search, required: true, schema: { $ref: #/definitions/VehicleAccessSearch } } ], responses: { 200: { description: Return a paged list of access from vehicle, schema: { type: array, items: { $ref: #/definitions/AccessMonitoredVehicle } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/alarm/pagesearch/all: { post: { description: Return a array of all monitored alarms filtered, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Monitoring Search, description: Search, required: true, schema: { $ref: #/definitions/MonitorationAlarmSearch } } ], responses: { 200: { description: Return a list of all monitored alarms, schema: { type: array, items: { $ref: #/definitions/AlarmMonitored } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/incident/{id}/procedure/paged: { get: { description: Return a array of incidents procedures, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Incident Id, required: true, type: integer, format: int64 }, { in: query, name: page, description: Page number, required: true, type: integer }, { in: query, name: pageSize, description: Size of page, required: true, type: integer } ], responses: { 200: { description: Return a array of incidents procedures, schema: { type: array, items: { $ref: #/definitions/IncidentProcedureSearch } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/incident/{id}/procedure: { post: { description: Create a new procedure for incident, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Incident, required: true, type: integer, format: int64 }, { in: body, name: Incident procedure, description: Incident procedure, required: true, schema: { $ref: #/definitions/IncidentProcedure } } ], responses: { 200: { description: Procedure added for incident, schema: { $ref: #/definitions/IncidentProcedureSearch } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Incident not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/incident/procedure: { put: { description: Create a new procedure for an incident list, does not change priority, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Incident procedure, description: Incident procedure, required: true, schema: { $ref: #/definitions/IncidentsCollectiveProcedure } } ], responses: { 200: { description: Procedure added for incidents }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/analytics/incidents: { get: { description: Return the total number of incidents grouped by priority, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: The total number of incidents grouped by priority, schema: { $ref: #/definitions/AnalyticsIncident } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/analytics/access: { get: { description: Return the total number of access granted, access denied and access rejected in 24 hours from the parameter accessDate or if the parameter has been not informed, return the total from the current day, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: accessDate, description: The start access date filter, required: false, type: string } ], responses: { 200: { description: The total number of access granted, access denied and access rejected, schema: { $ref: #/definitions/AnalyticsAccess } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/analytics/people/present: { get: { description: Return the total number of people present in all the physical locations, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: The total number of people present in all the physical locations, schema: { $ref: #/definitions/AnalyticsPeoplePresent } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/analytics/device/communication/status: { get: { description: Return the total number and communication status of managers and modules, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: The total number and communication status of managers and modules, schema: { $ref: #/definitions/AnalyticsComunicationStatus } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/analytics/device/alarmed/input: { get: { description: Returns the total number of alarmed input, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: The total number of alarmed input, schema: { $ref: #/definitions/AnalyticsInputCount } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /monitoring/analytics/manager/status: { get: { description: Return the total number and status of managers, tags: [ Monitoring ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: The total number and status of managers, schema: { $ref: #/definitions/ManagerDeviceStatusCount } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/scheduling: { get: { description: Return a array of scheduled credentials, tags: [ Credential ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: A array of scheduled credentials, schema: { type: array, items: { $ref: #/definitions/ScheduledCredential } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a scheduled credential, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Credential Scheduling, description: Credential Scheduling, required: true, schema: { $ref: #/definitions/ScheduledCredential } } ], responses: { 200: { description: Credential Scheduled updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Credential Scheduled not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new schedule credential registry, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Credential Scheduling, description: Credential Scheduling, required: true, schema: { $ref: #/definitions/ScheduledCredential } } ], responses: { 200: { description: Credential Scheduled, schema: { $ref: #/definitions/ScheduledCredential } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/scheduling/pagedsearch: { get: { description: Return a scheduled credential filtered, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: date, description: date, required: false, type: string }, { in: query, name: term, description: term, required: false, type: string }, { in: query, name: page, description: page, required: true, type: integer }, { in: query, name: pageSize, description: pageSize, required: true, type: integer } ], responses: { 200: { description: Return a array of scheduled credentials, schema: { type: array, items: { $ref: #/definitions/ScheduledCredential } } }, 401: { description: Token is invalid or expired }, 404: { description: scheduled credential not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/scheduling/pagedsearch/valid: { get: { description: Return valid scheduled credential filtered, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: date, description: date, required: false, type: string }, { in: query, name: term, description: term, required: false, type: string }, { in: query, name: page, description: page, required: true, type: integer }, { in: query, name: pageSize, description: pageSize, required: true, type: integer } ], responses: { 200: { description: Return a array of valid scheduled credentials, schema: { type: array, items: { $ref: #/definitions/ScheduledCredential } } }, 401: { description: Token is invalid or expired }, 404: { description: scheduled credential not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/scheduling/pagedsearch/all: { get: { description: Return a scheduled credential paginated, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: page, description: page, required: true, type: integer }, { in: query, name: pageSize, description: pageSize, required: true, type: integer } ], responses: { 200: { description: Return a array of scheduled credentials, schema: { type: array, items: { $ref: #/definitions/ScheduledCredential } } }, 401: { description: Token is invalid or expired }, 404: { description: scheduled credential not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/scheduling/{id}: { get: { description: Return a scheduled credential, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Scheduled credential, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a scheduled credential, schema: { $ref: #/definitions/ScheduledCredential } }, 401: { description: Token is invalid or expired }, 404: { description: scheduled credential not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a scheduled credential, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Scheduled credential, required: true, type: integer, format: int64 } ], responses: { 200: { description: scheduled credential deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: scheduled credential not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/scheduling/locator/{locator}: { get: { description: Return a scheduled credential by locator, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: locator, description: locator of Scheduled credential, required: true, type: string }, { in: query, name: terminal, description: Self service terminal ID, required: false, type: integer, format: int64 } ], responses: { 200: { description: Return a scheduled credential, schema: { $ref: #/definitions/ScheduledCredential } }, 401: { description: Token is invalid or expired }, 404: { description: scheduled credential not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/scheduling/person/{personId}: { get: { description: Return a scheduled credential by person id, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: personId, description: Id of the person of scheduled credential, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a scheduled credential, schema: { $ref: #/definitions/ScheduledCredential } }, 401: { description: Token is invalid or expired }, 404: { description: Schedule not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/scheduling/people: { post: { description: Return a scheduled credential filtered by people ids, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: People, description: Filter of people by id, required: true, schema: { $ref: #/definitions/SearchScheduledPeople } } ], responses: { 200: { description: Return a array of valid scheduled credentials, schema: { type: array, items: { $ref: #/definitions/ScheduledCredential } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/scheduling/document/{document}: { get: { description: Return a next valid scheduled credential by document, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: document, description: Document of person to scheduled credential, required: true, type: string }, { in: query, name: terminal, description: Self service terminal ID, required: false, type: integer, format: int64 }, { in: query, name: documentTypeId, description: Document type ID. This document type will be used as a filter in the search, required: false, type: integer, format: int64 } ], responses: { 200: { description: Return a scheduled credential, schema: { $ref: #/definitions/ScheduledCredential } }, 401: { description: Token is invalid or expired }, 404: { description: scheduled credential not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/scheduling/notification: { post: { description: Send visitor notification, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: VisitorNotification, description: Visitor notification, required: true, schema: { $ref: #/definitions/VisitorNotification } } ], responses: { 200: { description: Notification sent to visitor }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /cardformat: { get: { description: Return a array of card format, tags: [ Card Format ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return a list of card format, schema: { type: array, items: { $ref: #/definitions/CardFormat } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new card format, id field will be ignored, tags: [ Card Format ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: CardFormat, description: Card Format, required: true, schema: { $ref: #/definitions/CardFormat } } ], responses: { 200: { description: Card format created with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a card format, tags: [ Card Format ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: CardFormat, description: Card Format, required: true, schema: { $ref: #/definitions/CardFormat } } ], responses: { 200: { description: Card format updated with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Card format not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /cardformat/{id}: { get: { description: Return a card format, tags: [ Card Format ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Card format Id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a card format, schema: { $ref: #/definitions/CardFormat } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Card format not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a card format, tags: [ Card Format ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Card format Id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Card format deleted with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Card format not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /driver: { get: { description: Return a array of driver, tags: [ Driver ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return a list of driver, schema: { type: array, items: { $ref: #/definitions/Driver } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new driver, id field will be ignored, tags: [ Driver ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Driver, description: Driver, required: true, schema: { $ref: #/definitions/Driver } } ], responses: { 200: { description: Driver created with success, schema: { $ref: #/definitions/Driver } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a driver, tags: [ Driver ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Driver, description: Driver, required: true, schema: { $ref: #/definitions/Driver } } ], responses: { 200: { description: Driver updated with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Driver not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /driver/{id}: { get: { description: Return a driver, tags: [ Driver ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Driver id, required: true, type: integer, format: int64 } ], responses: { 200: { description: A driver, schema: { $ref: #/definitions/Driver } }, 401: { description: Token is invalid or expired }, 404: { description: Driver not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a driver, tags: [ Driver ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Driver Id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Driver deleted with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Driver not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /timeslot: { get: { description: Return a array of timeslot list, tags: [ Timeslot ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return a list of timeslotList, schema: { type: array, items: { $ref: #/definitions/TimeslotList } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new timeslot, Id field will be ignored, tags: [ Timeslot ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: TimeslotList, description: Timeslot list, required: true, schema: { $ref: #/definitions/TimeslotList } } ], responses: { 200: { description: Timeslot created with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Holiday list not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a timeslot list, tags: [ Timeslot ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: TimeslotList, description: Timeslot list, required: true, schema: { $ref: #/definitions/TimeslotList } } ], responses: { 200: { description: Timeslot updated with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Timeslot list or Holiday list not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /timeslot/{id}: { get: { description: Return a timeslot list, tags: [ Timeslot ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Timeslot list id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a timeslot List, schema: { $ref: #/definitions/TimeslotList } }, 401: { description: Token is invalid or expired }, 404: { description: Timeslot list not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a timeslot list, tags: [ Timeslot ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Timeslot list id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Timeslot deleted with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Timeslot list not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /range/{id}/role: { get: { description: Return a range of roles from a role, tags: [ Range ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Role Id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a list of roles, schema: { type: array, items: { $ref: #/definitions/BasicRole } } }, 401: { description: Token is invalid or expired }, 404: { description: Role no found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /range/{id}/role/{roleId}: { post: { description: Add a role to range, tags: [ Range ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Role Id, required: true, type: integer, format: int64 }, { in: path, name: roleId, description: Role Id add to range, required: true, type: integer, format: int64 } ], responses: { 200: { description: Role added with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Role no found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a role from range, tags: [ Range ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Role Id, required: true, type: integer, format: int64 }, { in: path, name: roleId, description: Role Id will be deleted from range, required: true, type: integer, format: int64 } ], responses: { 200: { description: Role deleted with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Role no found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /range/{id}/group: { get: { description: Return a range of groups from a role, tags: [ Range ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Role Id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a list of groups, schema: { type: array, items: { $ref: #/definitions/GroupWithPath } } }, 401: { description: Token is invalid or expired }, 404: { description: Role no found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /range/{id}/group/{groupId}: { post: { description: Add a group to range, tags: [ Range ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Group Id, required: true, type: integer, format: int64 }, { in: path, name: groupId, description: Group Id add to range, required: true, type: integer, format: int64 } ], responses: { 200: { description: Group added with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Group no found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a group from range, tags: [ Range ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Group Id, required: true, type: integer, format: int64 }, { in: path, name: groupId, description: Group Id will be deleted from range, required: true, type: integer, format: int64 } ], responses: { 200: { description: Group deleted with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Group no found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /range/{id}/physicallocation: { get: { description: Return a range of physical location from a role, tags: [ Range ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Role Id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a list of physical location, schema: { type: array, items: { $ref: #/definitions/PhysicalLocationWithPath } } }, 401: { description: Token is invalid or expired }, 404: { description: Role no found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /range/{id}/physicallocation/{physicalLocationId}: { post: { description: Add a physical location to range, tags: [ Range ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Physical Location Id, required: true, type: integer, format: int64 }, { in: path, name: physicalLocationId, description: Physical Location Id add to range, required: true, type: integer, format: int64 } ], responses: { 200: { description: Physical Location added with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Physical Location no found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a Physical Location from range, tags: [ Range ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Physical Location Id, required: true, type: integer, format: int64 }, { in: path, name: physicalLocationId, description: Physical Location Id will be deleted from range, required: true, type: integer, format: int64 } ], responses: { 200: { description: Physical Location deleted with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Physical Location no found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /user/person/{id}: { get: { description: Return a user, tags: [ User ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Person ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a user, schema: { $ref: #/definitions/User } }, 401: { description: Token is invalid or expired }, 404: { description: User not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /user/search: { get: { description: Search for users, by the name of associeted person, tags: [ User ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: term, description: Person name associeted with user, required: true, type: string } ], responses: { 200: { description: Return a user, schema: { type: array, items: { $ref: #/definitions/BasicUser } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /user: { post: { description: Create a new user, Id field will be ignored, tags: [ User ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: User, description: User, required: true, schema: { $ref: #/definitions/User } } ], responses: { 200: { description: User created, schema: { $ref: #/definitions/User } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Person, Local timezone, Locale or Lobby role not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a user, tags: [ User ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: User, description: User, required: true, schema: { $ref: #/definitions/User } } ], responses: { 200: { description: User updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: User, Person, Local timezone, Locale or Lobby role not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /user/{id}: { delete: { description: Delete a user, tags: [ User ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: User ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: User deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: User not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /user/preferences: { get: { description: Return preferences of loged user, tags: [ User ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return preferences of logged user, schema: { $ref: #/definitions/UserAllPreferences } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update preferences of logged user, tags: [ User ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: User, description: User, required: true, schema: { $ref: #/definitions/UserPreferences } } ], responses: { 200: { description: User preferences updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: User not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /user/available: { get: { description: Get all available users, tags: [ User ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: A array of available users, schema: { type: array, items: { $ref: #/definitions/BasicAvailableUser } } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /extensibleproperty: { get: { description: Return all extensible configuration, tags: [ Extensible Configuration ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return a array of extensible configuration, schema: { type: array, items: { $ref: #/definitions/ExtensibleConfiguration } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new extensible configuration, Id field will be ignored, tags: [ Extensible Configuration ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Extensible Configuration, description: Extensible Configuration, required: true, schema: { $ref: #/definitions/ExtensibleConfiguration } } ], responses: { 200: { description: Extensible configuration created with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a extensible configuration, tags: [ Extensible Configuration ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Extensible Configuration, description: Extensible Configuration, required: true, schema: { $ref: #/definitions/ExtensibleConfiguration } } ], responses: { 200: { description: Extensible configuration updated with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Extensible configuration not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /extensibleproperty/{id}: { delete: { description: Delete a Extensible Configuration, tags: [ Extensible Configuration ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Extensible Configuration ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: Extensible configuration deleted with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Extensible Configuration not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, get: { description: Return a extensible configuration, tags: [ Extensible Configuration ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Extensible Configuration ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a extensible configuration, schema: { $ref: #/definitions/ExtensibleConfiguration } }, 401: { description: Token is invalid or expired }, 404: { description: Extensible Configuration not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /localtimezone: { get: { description: Return all local time zones, tags: [ Time Zones ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return a array of local time zone, schema: { type: array, items: { $ref: #/definitions/LocalTimeZone } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new local time zone, Id field will be ignored, tags: [ Time Zones ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Local Time Zone, description: Local time zone, required: true, schema: { $ref: #/definitions/LocalTimeZone } } ], responses: { 200: { description: Local time zone created with success, schema: { $ref: #/definitions/LocalTimeZone } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a local time zone, tags: [ Time Zones ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Local Time Zone, description: Local time zone, required: true, schema: { $ref: #/definitions/LocalTimeZone } } ], responses: { 200: { description: Local time zone updated with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Local time zone not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /localtimezone/{id}: { get: { description: Return a local time zone, tags: [ Time Zones ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: local time zone id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a local time zone, schema: { $ref: #/definitions/LocalTimeZone } }, 401: { description: Token is invalid or expired }, 404: { description: Local time zone not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a local time zone, tags: [ Time Zones ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Local time zone ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: Local time zone deleted with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Local time zone not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /auth/logout: { post: { description: Disconnect a user, tags: [ Authentication ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: User disconnected }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /permission: { get: { description: Return a array of Permissions., tags: [ Permission ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: A array of Routines Permissions, schema: { type: array, items: { $ref: #/definitions/Permission } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /permission/role/{roleId}: { get: { description: Returns all the routines and operations that have been added to a role and all operations blocked., tags: [ Permission ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: roleId, description: Role id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return list of Operation Permissions and Operations blocked, schema: { $ref: #/definitions/ActivePermissionsAndLocks } }, 401: { description: Token is invalid or expired }, 404: { description: permission role not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Updating the permission of an operation routine of a paper, tags: [ Permission ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: roleId, description: Role id, required: true, type: integer, format: int64 }, { in: body, name: Operation, description: Operation Permission, required: true, schema: { $ref: #/definitions/IndividualPermission } } ], responses: { 200: { description: The permission of an operation routine of a role was updated }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /permission/role/{roleId}/routine: { put: { description: Updating all permission of an routine of a paper, tags: [ Permission ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: roleId, description: Role id, required: true, type: integer, format: int64 }, { in: body, name: Routine, description: Group of Routine, required: true, schema: { $ref: #/definitions/RoutinePermission } } ], responses: { 200: { description: The permissions of an routine of a role was updated }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /permission/person/{personId}/select: { get: { description: Returns all the routines that user has select permission, tags: [ Permission ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: personId, description: Person id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a array of routines permissions, schema: { type: array, items: { $ref: #/definitions/Routine } } }, 401: { description: Token is invalid or expired }, 404: { description: Person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /permission/person/{personId}/routine/{routineId}: { get: { description: Returns all the operations of a routine for somebody, tags: [ Permission ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: personId, description: Person id, required: true, type: integer, format: int64 }, { in: path, name: routineId, description: Routine id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return operations of a routine for somebody, schema: { $ref: #/definitions/Permission } }, 401: { description: Token is invalid or expired }, 404: { description: Person or routine not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /documenttype: { get: { description: Return a array of Document Type, tags: [ Document Type ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: onlyRequired, description: Filter to show only required documents., required: false, type: boolean } ], responses: { 200: { description: A array of Document Type, schema: { type: array, items: { $ref: #/definitions/DocumentType } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a Document Type, tags: [ Document Type ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Document Type, description: Document Type, required: true, schema: { $ref: #/definitions/DocumentType } } ], responses: { 200: { description: Document Type updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Document Type not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorWithParamsResponse } } } }, post: { description: Create a new Document Type, Id field will be ignored, tags: [ Document Type ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Document Type, description: Document Type, required: true, schema: { $ref: #/definitions/DocumentType } } ], responses: { 200: { description: Document created, schema: { $ref: #/definitions/DocumentType } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorWithParamsResponse } } } } }, /documenttype/{id}: { get: { description: Return a Document Type, tags: [ Document Type ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Document Type, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a Document Type, schema: { $ref: #/definitions/DocumentType } }, 401: { description: Token is invalid or expired }, 404: { description: Document Type not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a Document Type, tags: [ Document Type ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Document Type, required: true, type: integer, format: int64 } ], responses: { 200: { description: Document deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Document Type not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /locale: { get: { description: Return a array of Locale, tags: [ Locale ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: A array of Locale, schema: { type: array, items: { $ref: #/definitions/Locale } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a Locale, tags: [ Locale ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Locale, description: Locale, required: true, schema: { $ref: #/definitions/Locale } } ], responses: { 200: { description: Locale updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Locale not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new Locale, Id field will be ignored, tags: [ Locale ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Locale, description: Locale, required: true, schema: { $ref: #/definitions/Locale } } ], responses: { 200: { description: Locale created, schema: { $ref: #/definitions/Locale } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /locale/{id}: { get: { description: Return a Locale, tags: [ Locale ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Locale, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a Locale, schema: { $ref: #/definitions/Locale } }, 401: { description: Token is invalid or expired }, 404: { description: Locale found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a Locale, tags: [ Locale ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Locale, required: true, type: integer, format: int64 } ], responses: { 200: { description: Locale deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Locale not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /locale/default: { get: { description: Return default locale, tags: [ Locale ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return default locale, schema: { $ref: #/definitions/Locale } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /role: { get: { description: Return a array of Role, tags: [ Role ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: A array of Role, schema: { type: array, items: { $ref: #/definitions/Role } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a Role, tags: [ Role ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Role, description: Role\, required: true, schema: { $ref: #/definitions/Role } } ], responses: { 200: { description: Role updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Role not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new Role, Id field will be ignored, tags: [ Role ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Role, description: Role, required: true, schema: { $ref: #/definitions/Role } } ], responses: { 200: { description: Role created, schema: { $ref: #/definitions/Role } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /role/duplicate: { post: { description: Create a new Role, based an a Role id., tags: [ Role ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Role, description: Role based, required: true, schema: { $ref: #/definitions/RoleDuplicate } } ], responses: { 200: { description: Role duplicate, schema: { $ref: #/definitions/Role } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /role/{id}: { get: { description: Return a Role, tags: [ Role ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Role, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a Role, schema: { $ref: #/definitions/Role } }, 401: { description: Token is invalid or expired }, 404: { description: Role not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a Role, tags: [ Role ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Role, required: true, type: integer, format: int64 } ], responses: { 200: { description: Role deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Role not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /role/search: { get: { description: Auto complete search to role, tags: [ Role ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: term, description: Term of role name, required: true, type: string, minLength: 3 }, { in: query, name: provisory, description: Use provisory, required: false, type: boolean } ], responses: { 200: { description: A array of basic info from role limited by 10 retults, schema: { type: array, items: { $ref: #/definitions/BasicRole } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /role/pagedsearch: { get: { description: Paginated search to role, tags: [ Role ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: term, description: Term of role name, required: true, type: string, minLength: 3 }, { in: query, name: page, description: Page number, required: true, type: integer }, { in: query, name: pageSize, description: Size of page, required: true, type: integer } ], responses: { 200: { description: A paged array of role, schema: { type: array, items: { $ref: #/definitions/Role } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /role/pagedsearch/all: { get: { description: Paginated search from all role, tags: [ Role ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: page, description: Page number, required: true, type: integer }, { in: query, name: pageSize, description: Size of page, required: true, type: integer }, { in: query, name: provisory, description: True – Only use provisory, False – All, required: false, type: boolean } ], responses: { 200: { description: A paged array of role, schema: { type: array, items: { $ref: #/definitions/Role } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /role/{roleId}/physicallocation: { get: { description: Return all physical locations associete with role, tags: [ Role ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: roleId, description: Id of Role, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return all physical locations associete with role, schema: { type: array, items: { $ref: #/definitions/SimplePhysicalLocation } } }, 401: { description: Token is invalid or expired }, 404: { description: Role not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /role/{roleId}/physicallocation/{physicalLocationId}: { post: { description: Associate physical locations with role, tags: [ Role ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: roleId, description: Id of Role, required: true, type: integer, format: int64 }, { in: path, name: physicalLocationId, description: Id of physical location, required: true, type: integer, format: int64 } ], responses: { 200: { description: Physical location associate with role }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Role or physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete association between role and physical location, tags: [ Role ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: roleId, description: Id of Role, required: true, type: integer, format: int64 }, { in: path, name: physicalLocationId, description: Id of physical location, required: true, type: integer, format: int64 } ], responses: { 200: { description: Association between role and physical location deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Role or physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /role/{roleId}/authorizer: { get: { description: Return all authorizer roles from role, tags: [ Role ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: roleId, description: Id of Role, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return all authorizer roles from role, schema: { type: array, items: { $ref: #/definitions/BasicRole } } }, 401: { description: Token is invalid or expired }, 404: { description: Role not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /role/{roleId}/authorized: { get: { description: Return all authorized roles from role, tags: [ Role ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: roleId, description: Id of Role, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return all authorized roles from role, schema: { type: array, items: { $ref: #/definitions/BasicRole } } }, 401: { description: Token is invalid or expired }, 404: { description: Role not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /role/{roleId}/authorizer/{authorizerId}: { post: { description: Associate authorizer role with role, tags: [ Role ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: roleId, description: Id of Role, required: true, type: integer, format: int64 }, { in: path, name: authorizerId, description: Id of authorizer role, required: true, type: integer, format: int64 } ], responses: { 200: { description: Authorizer role associate with role }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Role or authorizer role not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete association between role and authorizer role, tags: [ Role ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: roleId, description: Id of Role, required: true, type: integer, format: int64 }, { in: path, name: authorizerId, description: Id of authorizer role, required: true, type: integer, format: int64 } ], responses: { 200: { description: Association between role and authorizer role deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Role or authorizer role not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /role/{roleId}/physicallocation/authorized: { get: { description: Return all physical locations authorized by role, tags: [ Role ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: roleId, description: Id of Role, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return all physical locations authorized by role, schema: { type: array, items: { $ref: #/definitions/BasicPhysicalLocation } } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Role not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /role/{roleId}/physicallocation/{physicalLocationId}/authorized: { post: { description: Associate authorized physical locations with role, tags: [ Role ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: roleId, description: Id of Role, required: true, type: integer, format: int64 }, { in: path, name: physicalLocationId, description: Id of authorized physical location, required: true, type: integer, format: int64 } ], responses: { 200: { description: Authorized physical location associate with role }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Role or authorized physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete association between role and authorized physical location, tags: [ Role ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: roleId, description: Id of Role, required: true, type: integer, format: int64 }, { in: path, name: physicalLocationId, description: Id of authorized physical location, required: true, type: integer, format: int64 } ], responses: { 200: { description: Association between role and authorized physical location deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Role or authorized physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /role/{roleId}/workschedule: { get: { description: Return Work Schedule from Role, tags: [ Role ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: roleId, description: Id of Role, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return Work Schedule from Role, schema: { type: array, items: { $ref: #/definitions/BasicWorkschedule } } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Role not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete association between Role and Work Schedule, tags: [ Role ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: roleId, description: Id of Role, required: true, type: integer, format: int64 } ], responses: { 200: { description: Association between Role and Work Schedule deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Role not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /role/{roleId}/workschedule/{workscheduleId}: { post: { description: Associate Work Schedule with Role, tags: [ Role ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: roleId, description: Id of Role, required: true, type: integer, format: int64 }, { in: path, name: workscheduleId, description: Id of Work Schedule, required: true, type: integer, format: int64 } ], responses: { 200: { description: Work Schedule associate with Role }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Role or Work Schedule not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /role/customvalidationpath: { put: { description: Update custom validation URL from role, tags: [ Role ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Role custom validation URL, description: Custom validation URL from role, required: true, schema: { $ref: #/definitions/CustomValidationUrl } } ], responses: { 200: { description: Role custom validation updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Role or Work Schedule not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /role/{id}/customvalidationpath: { get: { description: Return the custom validation URL from role, tags: [ Physical Location ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of role, required: true, type: integer, format: int64 } ], responses: { 200: { description: Custom validation URL from role, schema: { $ref: #/definitions/CustomValidationUrl } }, 401: { description: Token is invalid or expired }, 404: { description: Role not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /role/{roleId}/person/pagedsearch: { get: { description: Paginated search of person active person associated with role, tags: [ Role ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: term, description: Term of person name, required: true, type: string, minLength: 3 }, { in: query, name: page, description: Page number, required: true, type: integer }, { in: query, name: pageSize, description: Size of page, required: true, type: integer }, { in: path, name: roleId, description: Id of Role, required: true, type: integer, format: int64 } ], responses: { 200: { description: A paged array of active person associated with role, schema: { type: array, items: { $ref: #/definitions/RoleSearchPerson } } }, 401: { description: Token is invalid or expired }, 404: { description: Role not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /role/{roleId}/person/pagedsearch/all: { get: { description: Paginate all person active person associated with role, tags: [ Role ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: page, description: Page number, required: true, type: integer }, { in: query, name: pageSize, description: Size of page, required: true, type: integer }, { in: path, name: roleId, description: Id of Role, required: true, type: integer, format: int64 } ], responses: { 200: { description: A paged array of active person associated with role, schema: { type: array, items: { $ref: #/definitions/RoleSearchPerson } } }, 401: { description: Token is invalid or expired }, 404: { description: Role not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /role/{roleId}/person/{personId}: { post: { description: Associate person with role, tags: [ Role ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: roleId, description: Id of Role, required: true, type: integer, format: int64 }, { in: path, name: personId, description: Id of person, required: true, type: integer, format: int64 } ], responses: { 200: { description: Id and status of association between person and role, schema: { $ref: #/definitions/PersonRoleId } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Role or person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /role/person/{rolePersonId}: { delete: { description: Delete association between role and person, tags: [ Role ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: rolePersonId, description: Id of association between person and role, required: true, type: integer, format: int64 } ], responses: { 200: { description: Association between role and person deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Association between role and person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation: { put: { description: Update a Physical location, tags: [ Physical Location ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Physical location, description: PhysicalLocation, required: true, schema: { $ref: #/definitions/PhysicalLocation } } ], responses: { 200: { description: Physical location updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new Physical location, Id field will be ignored, tags: [ Physical Location ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Physical location, description: Physical location, required: true, schema: { $ref: #/definitions/PhysicalLocation } } ], responses: { 200: { description: Physical location created, schema: { $ref: #/definitions/PhysicalLocation } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/actualcapacity: { put: { description: Update actual capacity from physical location, tags: [ Physical Location ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Physical location capacity, description: Actual capacity from physicalLocation, required: true, schema: { $ref: #/definitions/PhysicalLocationCapacity } } ], responses: { 200: { description: Actual capacity from physical location updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/antipassbacktime: { put: { description: Update antiPassBack from physical location, tags: [ Physical Location ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Physical location anti passback time, description: AntiPassbackTime from physicalLocation, required: true, schema: { $ref: #/definitions/PhysicalLocationAntiPassbackTime } } ], responses: { 200: { description: AntiPassbackTime from physical location updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/level: { put: { description: Update level from physical location, tags: [ Physical Location ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Physical location level, description: Level from physicalLocation, required: true, schema: { $ref: #/definitions/PhysicalLocationLevel } } ], responses: { 200: { description: Level from physical location updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/maxcapacity: { put: { description: Update max capacity from physical location, tags: [ Physical Location ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Physical location max capacity, description: Max capacity from physicalLocation, required: true, schema: { $ref: #/definitions/PhysicalLocationMaxCapacity } } ], responses: { 200: { description: Max capacity from physical location updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/slottime: { put: { description: Update slot time from physical location, tags: [ Physical Location ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Physical location slot time, description: Slot time from physicalLocation, required: true, schema: { $ref: #/definitions/PhysicalLocationSlotTimeBasic } } ], responses: { 200: { description: Slot time from physical location updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/customvalidationpath: { put: { description: Update custom validation URL from physical location, tags: [ Physical Location ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Physical location custom validation URL, description: Custom validation URL from physicalLocation, required: true, schema: { $ref: #/definitions/CustomValidationUrl } } ], responses: { 200: { description: Custom validation URL from physical location updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Role not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/{id}: { get: { description: Return a Physical location, tags: [ Physical Location ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Physical location, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a Physical location, schema: { $ref: #/definitions/PhysicalLocation } }, 401: { description: Token is invalid or expired }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a Physical location, tags: [ Physical Location ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Physical location, required: true, type: integer, format: int64 } ], responses: { 200: { description: Physical location deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/{id}/actualcapacity: { get: { description: Return the actual capacity from physical location, tags: [ Physical Location ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Physical location, required: true, type: integer, format: int64 } ], responses: { 200: { description: Actual capacity from physical location, schema: { $ref: #/definitions/PhysicalLocationCapacity } }, 401: { description: Token is invalid or expired }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/{id}/antipassbacktime: { get: { description: Return the antiPassBackTime from physical location, tags: [ Physical Location ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Physical location, required: true, type: integer, format: int64 } ], responses: { 200: { description: AntiPassbackTime from physical location, schema: { $ref: #/definitions/PhysicalLocationAntiPassbackTime } }, 401: { description: Token is invalid or expired }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/{id}/level: { get: { description: Return the level from physical location, tags: [ Physical Location ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Physical location, required: true, type: integer, format: int64 } ], responses: { 200: { description: Level from physical location, schema: { $ref: #/definitions/PhysicalLocationLevel } }, 401: { description: Token is invalid or expired }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/{id}/maxcapacity: { get: { description: Return the maxcapacity from physical location, tags: [ Physical Location ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Physical location, required: true, type: integer, format: int64 } ], responses: { 200: { description: MaxCapacity from physical location, schema: { $ref: #/definitions/PhysicalLocationMaxCapacity } }, 401: { description: Token is invalid or expired }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/{id}/slottime: { get: { description: Return the slottimes from physical location, tags: [ Physical Location ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Physical location, required: true, type: integer, format: int64 } ], responses: { 200: { description: Slot Time from physical location, schema: { $ref: #/definitions/PhysicalLocationSlotTime } }, 401: { description: Token is invalid or expired }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/{id}/customvalidationpath: { get: { description: Return the custom validation URL from physical location, tags: [ Physical Location ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Physical location, required: true, type: integer, format: int64 } ], responses: { 200: { description: Custom validation URL from physical location, schema: { $ref: #/definitions/CustomValidationUrl } }, 401: { description: Token is invalid or expired }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/{id}/children: { get: { description: Return array of children from a parent Physical Location, tags: [ Physical Location ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of parent Physical location, required: true, type: integer, format: int64 }, { in: query, name: status, description: PhysicalLocation status filter (0=ALL, 1=ACTIVE), required: true, type: integer }, { in: query, name: rangeFilter, description: Physical location hierarchy range filter, required: false, type: string, enum: [ ALL, VALID_RANGE_IN_HIERARCHY ] } ], responses: { 200: { description: A array of clildren from a parent Physical Location, schema: { type: array, items: { $ref: #/definitions/ChildPhysicalLocation } } }, 401: { description: Token is invalid or expired }, 404: { description: Physical location parent not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/{id}/enable: { put: { description: Active a Physical Location, tags: [ Physical Location ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of a Physical location, required: true, type: integer, format: int64 } ], responses: { 200: { description: Physical Location Actived }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/{id}/disable: { put: { description: Disable a Physical Location, tags: [ Physical Location ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of a Physical location, required: true, type: integer, format: int64 } ], responses: { 200: { description: Physical Location Disabled }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/search: { get: { description: Auto complete search to physical location, tags: [ Physical Location ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: term, description: Term of physical location name, required: true, type: string, minLength: 3 }, { in: query, name: situation, description: Physical location situation filter (0=ALL, 1=ACTIVE), required: true, type: integer } ], responses: { 200: { description: A array of basic info from physical location limited by 10 retults, schema: { type: array, items: { $ref: #/definitions/PhysicalLocationWithPath } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/search/norange: { get: { description: Auto complete search to active physical location, without aplly range on result, tags: [ Physical Location ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: term, description: Term of physical location name, required: true, type: string, minLength: 3 } ], responses: { 200: { description: A array of basic info from physical location limited by 10 retults, schema: { type: array, items: { $ref: #/definitions/PhysicalLocationWithPath } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/{id}/path: { get: { description: Return a physical location path, tags: [ Physical Location ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Physical location ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: The physical location path, schema: { type: array, items: { $ref: #/definitions/PhysicalLocationWithPathRange } } }, 401: { description: Token is invalid or expired }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/{id}/role: { get: { description: Return all roles associete with physical location, tags: [ Physical Location ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Physical Location, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return all roles associete with physical location, schema: { type: array, items: { $ref: #/definitions/BasicRole } } }, 401: { description: Token is invalid or expired }, 404: { description: Physical Location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/{id}/role/authorizer: { get: { description: Return all authorizer roles associeted with physical location, tags: [ Physical Location ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Physical Location, required: true, type: integer, format: int64 } ], responses: { 200: { description: All authorizer roles associeted with physical location, schema: { type: array, items: { $ref: #/definitions/BasicRole } } }, 401: { description: Token is invalid or expired }, 404: { description: Physical Location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/{physicalLocationId}/device: { get: { description: Return devices from physical location. If device type filter isnt declared, then all devices from physical location is returned. Apply physical location range., tags: [ Physical Location ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: physicalLocationId, description: Id of Physical location, required: true, type: integer, format: int64 }, { in: query, name: deviceType, description: Device type filter, required: false, type: string, enum: *DeviceType } ], responses: { 200: { description: Device list from physical location, schema: { $ref: #/definitions/SimpleDevice } }, 401: { description: Token is invalid or expired }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /physicallocation/{id}/offset: { get: { description: Returns the offset of a physical location, considering daylight saving time., tags: [ Physical Location ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Physical Location, required: true, type: integer, format: int64 } ], responses: { 200: { description: The offset of a physical location, considering daylight saving time, type: integer }, 401: { description: Token is invalid or expired }, 404: { description: Physical Location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /workschedule: { get: { description: Return a array of Work Schedule, tags: [ workschedule ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: A array of Work Schedule, schema: { type: array, items: { $ref: #/definitions/Workschedule } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update an Work Schedule, tags: [ workschedule ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: workschedule, description: Work Schedule, required: true, schema: { $ref: #/definitions/Workschedule } } ], responses: { 200: { description: Work Schedule updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Work Schedule not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new Work Schedule, Id field will be ignored, tags: [ workschedule ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: workschedule, description: Work Schedule, required: true, schema: { $ref: #/definitions/Workschedule } } ], responses: { 200: { description: Work Schedule created, schema: { $ref: #/definitions/Workschedule } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /workschedule/{id}: { get: { description: Return an Work Schedule, tags: [ workschedule ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Work Schedule, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return an Work Schedule, schema: { $ref: #/definitions/Workschedule } }, 401: { description: Token is invalid or expired }, 404: { description: Work Schedule not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a Work Schedule, tags: [ workschedule ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Work Schedule, required: true, type: integer, format: int64 } ], responses: { 200: { description: Work Schedule deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Work Schedule not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /rejectedEvent/pagedsearch/all: { get: { description: Return an all rejected events, tags: [ Rejected Event ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: order, description: Order filter, (1 for ascending order, 0 for descending order), required: false, type: integer }, { in: query, name: type, description: Rejected event type filter (0 = ACCESS, 1= ALARM , 2= NOTIFICATION), required: false, type: string }, { in: query, name: startDate, description: Start date, required: true, type: string }, { in: query, name: endDate, description: End date, required: true, type: string }, { in: query, name: page, description: Page number, required: true, type: integer }, { in: query, name: pageSize, description: Size of page, required: true, type: integer } ], responses: { 200: { description: Return an rejected event, schema: { type: array, items: { $ref: #/definitions/RejectedEvent } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /rejectedEvent/vehicle/pagedsearch: { get: { description: Returns rejected vehicle events, tags: [ Rejected Event ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: order, description: Order filter (1 for ascending order, 0 for descending order), required: false, type: integer }, { in: query, name: startDate, description: Start date, required: true, type: string }, { in: query, name: endDate, description: End date, required: true, type: string }, { in: query, name: page, description: Page number, required: true, type: integer }, { in: query, name: pageSize, description: Size of page, required: true, type: integer } ], responses: { 200: { description: A list of rejected vehicle events, schema: { type: array, items: { $ref: #/definitions/RejectedVehicleEvent } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /workschedule/{id}/roles: { get: { description: Return all Roles of Work Schedule, tags: [ workschedule ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Work Schedule, required: true, type: integer, format: int64 } ], responses: { 200: { description: All roles of Work Schedule, schema: { $ref: #/definitions/BasicRole } }, 401: { description: Token is invalid or expired }, 404: { description: Work Schedule not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /workschedule/{workscheduleId}/role/{roleId}: { delete: { description: Delete association between Work Schedule and Role, tags: [ workschedule ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: workscheduleId, description: Id of Work Schedule, required: true, type: integer, format: int64 }, { in: path, name: roleId, description: Id of role, required: true, type: integer, format: int64 } ], responses: { 200: { description: Association between Work Schedule and Role deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Work Schedule or Role not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /workschedule/role: { post: { description: Create association between Work Schedule and Role, tags: [ workschedule ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: workschedule, description: Association between Work Schedule and Role, required: true, schema: { $ref: #/definitions/WorkscheduleRole } } ], responses: { 200: { description: Association between Work Schedule and Role created }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /workschedule/search: { get: { description: Auto complete search to Work Schedule, tags: [ workschedule ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: term, description: Term of Work Schedule name, required: true, type: string, minLength: 3 } ], responses: { 200: { description: A array of basic info from Work Schedule limited by 10 results, schema: { type: array, items: { $ref: #/definitions/BasicWorkschedule } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /workschedule/pagedsearch: { get: { description: Paginated search to Work Schedule, tags: [ workschedule ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: term, description: Term of Work Schedule name, required: true, type: string, minLength: 3 }, { in: query, name: page, description: Page number, required: true, type: integer }, { in: query, name: pageSize, description: Size of page, required: true, type: integer } ], responses: { 200: { description: A paged array of Work Schedule, schema: { type: array, items: { $ref: #/definitions/Workschedule } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /workschedule/pagedsearch/all: { get: { description: Search paginated of all Work Schedule, tags: [ workschedule ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: page, description: Page number, required: true, type: integer }, { in: query, name: pageSize, description: Size of page, required: true, type: integer } ], responses: { 200: { description: A paged array of all Work Schedule, schema: { type: array, items: { $ref: #/definitions/Workschedule } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /group: { get: { description: Return a array of group, tags: [ Group ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: A array of Group, schema: { type: array, items: { $ref: #/definitions/Group } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a Group, tags: [ Group ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Group, description: Group, required: true, schema: { $ref: #/definitions/Group } } ], responses: { 200: { description: Group updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Group not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new Group, Id field will be ignored, tags: [ Group ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Group, description: Group, required: true, schema: { $ref: #/definitions/Group } } ], responses: { 200: { description: Group created, schema: { $ref: #/definitions/Group } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /group/{id}/person/pagedsearch/all: { get: { description: Paginated search from all person from group, tags: [ Group ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Group Id, required: true, type: integer, format: int64 }, { in: query, name: page, description: Page number, required: true, type: integer }, { in: query, name: pageSize, description: Size of page, required: true, type: integer } ], responses: { 200: { description: A paged array of person, schema: { type: array, items: { $ref: #/definitions/BasicPerson } } }, 401: { description: Token is invalid or expired }, 404: { description: Group not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /group/{id}/person/{personId}: { post: { description: Add a person to the group, tags: [ Group ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Group, required: true, type: integer, format: int64 }, { in: path, name: personId, description: Id of person, required: true, type: integer, format: int64 } ], responses: { 200: { description: Person added with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Group or person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a person from group, tags: [ Group ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Group, required: true, type: integer, format: int64 }, { in: path, name: personId, description: Id of person, required: true, type: integer, format: int64 } ], responses: { 200: { description: Person removed with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Group or person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /group/{id}: { get: { description: Return a Group, tags: [ Group ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Group, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a Group, schema: { $ref: #/definitions/GroupSearch } }, 401: { description: Token is invalid or expired }, 404: { description: Group not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a Group, tags: [ Group ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Group, required: true, type: integer, format: int64 } ], responses: { 200: { description: Group deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Group not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /group/search: { get: { description: Auto complete search to group, tags: [ Group ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: term, description: Term of group name, required: true, type: string, minLength: 3 } ], responses: { 200: { description: A array of basic info from group limited by 10 retults, schema: { type: array, items: { $ref: #/definitions/GroupWithPath } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /group/{id}/children: { get: { description: Return array of children from a parent Group, tags: [ Group ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of parent group, required: true, type: integer, format: int64 } ], responses: { 200: { description: A array of clildren from a parent Group, schema: { type: array, items: { $ref: #/definitions/ChildGroup } } }, 401: { description: Token is invalid or expired }, 404: { description: Group parent not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /group/{id}/path: { get: { description: Return a group path, tags: [ Group ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Group ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: The group path, schema: { type: array, items: { $ref: #/definitions/GroupWithPath } } }, 401: { description: Token is invalid or expired }, 404: { description: Group not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /group/pagedsearch: { get: { description: Paginated search to group, tags: [ Group ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: page, description: Page number, required: true, type: integer }, { in: query, name: pageSize, description: Size of page, required: true, type: integer } ], responses: { 200: { description: A paged array of group, schema: { type: array, items: { $ref: #/definitions/GroupSearch } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person: { put: { description: Update a person, tags: [ Person ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Person, description: Person, required: true, schema: { $ref: #/definitions/Person } } ], responses: { 200: { description: Person updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new Person, Id field will be ignored, tags: [ Person ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Person, description: Person, required: true, schema: { $ref: #/definitions/Person } } ], responses: { 200: { description: Person created, schema: { $ref: #/definitions/Person } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/{id}: { get: { description: Return a person, tags: [ Person ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of person, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a person, schema: { $ref: #/definitions/Person } }, 401: { description: Token is invalid or expired }, 404: { description: Person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a person, tags: [ Person ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of person, required: true, type: integer, format: int64 } ], responses: { 200: { description: Person deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/document/{document}: { get: { description: Return a person by document, tags: [ Person ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: document, description: A document number of person, required: true, type: string }, { in: query, name: ignoreRoleValidation, description: Ignores an active role validation, required: false, type: boolean }, { in: query, name: documentTypeId, description: Document type ID. This document type will be used as a filter in the search, required: false, type: integer, format: int64 } ], responses: { 200: { description: Return a person, schema: { $ref: #/definitions/SimplePerson } }, 401: { description: Token is invalid or expired }, 404: { description: Person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/search: { get: { description: Auto complete search to person, tags: [ Person ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: term, description: Term of person name, last name or document, required: true, type: string, minLength: 3 }, { in: query, name: situation, description: Person situation filter (0=ALL, 1=ACTIVE), required: true, type: integer }, { in: query, name: onlyReceiveVisit, description: Filter only person that can receive visit, required: false, type: boolean } ], responses: { 200: { description: A array of basic info for search from people limited by 10 retults, schema: { type: array, items: { $ref: #/definitions/SearchPerson } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/searchnofilter: { get: { description: Auto complete search to person, without verify range and situation, tags: [ Person ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: term, description: Term of person name, last name or document, required: true, type: string, minLength: 3 } ], responses: { 200: { description: A array of basic info for search from people limited by 10 retults, schema: { type: array, items: { $ref: #/definitions/SearchPerson } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/visitors/search: { get: { description: Auto complete search to visitor, tags: [ Person ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: term, description: Term of visitor name, last name or document, required: true, type: string, minLength: 3 }, { in: query, name: searchByName, description: If the value is true or null the result will be filtered by name, if the value is false it will not be searched by name, required: false, type: boolean }, { in: query, name: searchByDocument, description: If the value is true or null the result will be filtered by document, if the value is false it will not be searched by document, required: false, type: boolean } ], responses: { 200: { description: A array of basic info for search from visitors limited by 10 retults, schema: { type: array, items: { $ref: #/definitions/SearchVisitor } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/user/search: { post: { description: Returns person information associated with the user if password is correct, tags: [ Person ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: User, description: User, required: true, schema: { $ref: #/definitions/UserAndPassword } } ], responses: { 200: { description: Person information associated with the user, schema: { $ref: #/definitions/SimplePersonWithPhoto } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/pagedsearch: { get: { description: Paginated search to person, tags: [ Person ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: term, description: Term of person name, required: true, type: string, minLength: 3 }, { in: query, name: page, description: Page number, required: true, type: integer }, { in: query, name: pageSize, description: Size of page, required: true, type: integer }, { in: query, name: situation, description: Person situation filter (0=ALL, 1=ACTIVE), required: true, type: integer }, { in: query, name: onlyReceiveVisit, description: Filter only person that can receive visit, required: false, type: boolean } ], responses: { 200: { description: A paged array of person, schema: { type: array, items: { $ref: #/definitions/SearchPerson } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/pagedsearchall: { get: { description: Paginated search to all person, tags: [ Person ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: page, description: Page number, required: true, type: integer }, { in: query, name: pageSize, description: Size of page, required: true, type: integer }, { in: query, name: situation, description: Person situation filter (0=ALL, 1=ACTIVE), required: true, type: integer }, { in: query, name: onlyReceiveVisit, description: Filter only person that can receive visit, required: false, type: boolean } ], responses: { 200: { description: A paged array of person, schema: { type: array, items: { $ref: #/definitions/SearchPerson } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/greater/{id}: { get: { description: Obtain a list of person ID, with ID greater than id of the parameter., tags: [ Person ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of person, required: true, type: integer, format: int64 } ], responses: { 200: { description: A array of person ID, schema: { type: array, items: { type: integer, format: int64 } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/{id}/situation: { get: { description: Return situation history from a person, tags: [ Person ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of person, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return situation history from a person, schema: { $ref: #/definitions/PersonSituation } }, 401: { description: Token is invalid or expired }, 404: { description: Person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/block: { put: { description: Block a person, tags: [ Person ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Person, description: Person, required: true, schema: { $ref: #/definitions/PersonBlock } } ], responses: { 200: { description: Person blocked }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/unblock: { put: { description: Unblock a person, tags: [ Person ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Person, description: Person, required: true, schema: { $ref: #/definitions/PersonUnblock } } ], responses: { 200: { description: Person unblocked }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/{id}/inactivate: { put: { description: Inactivate a person, tags: [ Person ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of a person, required: true, type: integer, format: int64 } ], responses: { 200: { description: Person inactiveted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/{id}/validation/resetaccesslevel: { put: { description: Reset the access level from person, tags: [ Person ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of a person, required: true, type: integer, format: int64 } ], responses: { 200: { description: Person accessLevel reset }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/{personId}/roles: { get: { description: Return all the roles from person, tags: [ Person ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: personId, description: Id of a person, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return all the roles from person, schema: { type: array, items: { $ref: #/definitions/PersonRoleSearch } } }, 401: { description: Token is invalid or expired }, 404: { description: Person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/{personId}/role/{roleId}: { get: { description: Return person with role association. It considers suspended associations., tags: [ Person ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: personId, description: Id of a person, required: true, type: integer, format: int64 }, { in: path, name: roleId, description: Id of a role, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return person with role association, schema: { $ref: #/definitions/PersonRoleSearch } }, 401: { description: Token is invalid or expired }, 404: { description: Person with role association not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/role: { post: { description: Join person with role, tags: [ Person ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: PersonRole, description: Person with role association, required: true, schema: { $ref: #/definitions/PersonRole } } ], responses: { 200: { description: Role joined with person, schema: { $ref: #/definitions/PersonRole } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update Join between person and role, tags: [ Person ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: PersonRole, description: Person with role association, required: true, schema: { $ref: #/definitions/PersonRole } } ], responses: { 200: { description: Join between person and role updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/role/{personRoleId}: { delete: { description: Delete join between person and role, tags: [ Person ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: personRoleId, description: Id of personRole, required: true, type: integer, format: int64 } ], responses: { 200: { description: Join between person and role deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Person/Role not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/card/{card}: { get: { description: Return a person that the card belongs, tags: [ Person ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: card, description: the card number, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a person that the card belongs, schema: { $ref: #/definitions/Person } }, 401: { description: Token is invalid or expired }, 404: { description: person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/{personId}/roles/history: { get: { description: Return history of last 10 roles from person, tags: [ Person ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: personId, description: Id of a person, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return history of last 10 roles from person, schema: { type: array, items: { $ref: #/definitions/PersonRoleSearch } } }, 401: { description: Token is invalid or expired }, 404: { description: Person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/{personId}/group: { get: { description: Return all the groups from person, tags: [ Person ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: personId, description: Person Id, required: true, type: string } ], responses: { 200: { description: All the groups from person, schema: { type: array, items: { $ref: #/definitions/GroupWithPath } } }, 401: { description: Token is invalid or expired }, 404: { description: Person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/{personId}/photo: { get: { description: Return photo url from person, tags: [ Person ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: personId, description: Person Id, required: true, type: string } ], responses: { 200: { description: The photo url from person, schema: { $ref: #/definitions/PersonPhoto } }, 401: { description: Token is invalid or expired }, 404: { description: Person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Update person photo, tags: [ Person ], consumes: [ multipart/form-data ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: personId, description: Id of a person, required: true, type: integer, format: int64 }, { in: formData, name: file, description: The person photo, required: true, type: file } ], responses: { 200: { description: Date of person photo, schema: { $ref: #/definitions/PersonPhoto } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /server/datetime: { get: { description: Return datetime of server, tags: [ Server ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: A datetime of server, schema: { $ref: #/definitions/Server } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /server/status: { get: { description: Return the status of server, tags: [ Server ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Communication with database successful }, 401: { description: Token is invalid or expired }, 500: { description: Error in communication with database } } } }, /person/role/suspension/{id}: { get: { description: Return all the suspensions for association between person and role, tags: [ Person ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of association between person and role, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return all the suspensions for association between person and role, schema: { type: array, items: { $ref: #/definitions/PersonRoleSuspensionSearch } } }, 401: { description: Token is invalid or expired }, 404: { description: Person and role association not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete suspension for association between person and role, tags: [ Person ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of personRoleSuspension, required: true, type: integer, format: int64 } ], responses: { 200: { description: Suspension for association between person and role deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Suspension not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/role/suspension: { post: { description: Suspend association between person and role, tags: [ Person ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: PersonRoleSuspension, description: Suspension for person with role association, required: true, schema: { $ref: #/definitions/PersonRoleSuspension } } ], responses: { 200: { description: Association between person and role suspended }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update suspensions for association between person and role, tags: [ Person ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: PersonRoleSuspension, description: Suspension for person with role association, required: true, schema: { $ref: #/definitions/PersonRoleSuspension } } ], responses: { 200: { description: Suspension for person with role association updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /person/role/suspendAll: { post: { description: Suspend all association between person and role, tags: [ Person ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: PersonRoleSuspendAll, description: Suspension for person with all role association, required: true, schema: { $ref: #/definitions/PersonRoleSuspendAll } } ], responses: { 200: { description: Return all the suspensions ids for association between person and all roles, schema: { $ref: #/definitions/SuspensionIdList } }, 401: { description: Token is invalid or expired }, 404: { description: Person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete all suspension for association between person and roles, created by integration with person manager, tags: [ Person ], consumes: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: SuspensionIdList, description: Suspension IDs list, required: true, type: array, items: { type: integer, format: int64 } } ], responses: { 200: { description: Suspensions created by integration with person manager deleted }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /timezone: { get: { description: Return all the Time Zones registrants, tags: [ Time Zones ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return all the time Zones registrants, schema: { type: array, items: { $ref: #/definitions/TimeZones } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /holidaylist: { get: { description: Return a array of holiday list, tags: [ Holiday ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: A array of holiday list, schema: { type: array, items: { $ref: #/definitions/HolidayList } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a holiday list, tags: [ Holiday ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Holiday list, description: Holiday list, required: true, schema: { $ref: #/definitions/HolidayList } } ], responses: { 200: { description: Holiday list updated }, 401: { description: Token is invalid or expired }, 403: { description: No permission to modify the list }, 404: { description: Holiday list not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new Holiday list, Id field will be ignored, tags: [ Holiday ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Holiday list, description: Holiday list, required: true, schema: { $ref: #/definitions/HolidayList } } ], responses: { 200: { description: Holiday list created, schema: { $ref: #/definitions/HolidayList } }, 401: { description: Token is invalid or expired }, 403: { description: No permission to modify the list }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /holidaylist/{id}: { get: { description: Return a holiday list, tags: [ Holiday ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of holiday list, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a holiday list, schema: { $ref: #/definitions/HolidayList } }, 401: { description: Token is invalid or expired }, 404: { description: Holiday list not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a holiday list, tags: [ Holiday ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of holiday list, required: true, type: integer, format: int64 } ], responses: { 200: { description: Holiday list deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Holiday list not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/manager/search: { post: { description: Search manager device, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: filter, description: Filter, required: true, schema: { $ref: #/definitions/ManagerDeviceFilter } } ], responses: { 200: { description: Return a list of manager device, schema: { type: array, items: { $ref: #/definitions/SimpleDevice } } }, 401: { description: Token is invalid or expired }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/manager/driver: { post: { description: Return a array of device type manager from a driver ID list, tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Driver ID list, description: Driver ID list, required: true, schema: { type: array, items: { $ref: #/definitions/DriverId } } } ], responses: { 200: { description: Return a list of device type manager, schema: { type: array, items: { $ref: #/definitions/DeviceManager } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/manager: { get: { description: Return a array of device type manager, tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return a list of device type manager, schema: { type: array, items: { $ref: #/definitions/DeviceManager } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a device type manager, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Device, description: Device type manager, required: true, schema: { $ref: #/definitions/DeviceManager } }, { in: query, name: removeFromBlueprint, description: Remove blueprint reference, required: false, type: boolean } ], responses: { 200: { description: Device updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Device not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new device type manager, Id field will be ignored, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Device, description: Device type manager, required: true, schema: { $ref: #/definitions/DeviceManager } } ], responses: { 200: { description: Device created, schema: { $ref: #/definitions/DeviceManager } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/manager/{id}: { get: { description: Return a device manager, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of device manager, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a device manager, schema: { $ref: #/definitions/DeviceManager } }, 401: { description: Token is invalid or expired }, 404: { description: Device manager not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/module: { get: { description: Return a array of device type module, tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return a list of device type module, schema: { type: array, items: { $ref: #/definitions/DeviceModule } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a device type module, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Device, description: Device type module, required: true, schema: { $ref: #/definitions/DeviceModule } }, { in: query, name: removeFromBlueprint, description: Remove blueprint reference, required: false, type: boolean } ], responses: { 200: { description: Device updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Device not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new device type module, Id field will be ignored, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Device, description: Device type module, required: true, schema: { $ref: #/definitions/DeviceModule } } ], responses: { 200: { description: Device created, schema: { $ref: #/definitions/DeviceModule } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/module/{id}: { get: { description: Return a device module, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of device module, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a device module, schema: { $ref: #/definitions/DeviceModule } }, 401: { description: Token is invalid or expired }, 404: { description: Device module not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/reader: { get: { description: Return a array of device type reader, tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return a list of device type reader, schema: { type: array, items: { $ref: #/definitions/DeviceReader } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a device type reader, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Device, description: Device type reader, required: true, schema: { $ref: #/definitions/DeviceReader } } ], responses: { 200: { description: Device updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Device not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new device type reader, Id field will be ignored, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Device, description: Device type reader, required: true, schema: { $ref: #/definitions/DeviceReader } } ], responses: { 200: { description: Device created, schema: { $ref: #/definitions/DeviceReader } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/reader/search: { get: { description: Search readers by name, tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: term, description: Term to search on reader name, required: true, type: string, minLength: 3 }, { in: query, name: status, description: Device situation filter (0=ALL, 1=ONLY ACTIVE), required: false, type: integer } ], responses: { 200: { description: Return a list of reader thah match with given term, schema: { type: array, items: { $ref: #/definitions/SimpleDevice } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/collector/reader: { get: { description: Returns reader devices relatives to colletor manager devices, tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: List of reader devices, schema: { type: array, items: { $ref: #/definitions/DeviceReader } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/reader/{id}: { get: { description: Return a device reader, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of device reader, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a device reader, schema: { $ref: #/definitions/DeviceReader } }, 401: { description: Token is invalid or expired }, 404: { description: Device reader not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/input: { get: { description: Return a array of device type input, tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return a list of device type input, schema: { type: array, items: { $ref: #/definitions/DeviceInput } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a device type input, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Device, description: Device type input, required: true, schema: { $ref: #/definitions/DeviceInput } }, { in: query, name: removeFromBlueprint, description: Remove blueprint reference, required: false, type: boolean } ], responses: { 200: { description: Device updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Device not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new device type input, Id field will be ignored, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Device, description: Device type input, required: true, schema: { $ref: #/definitions/DeviceInput } } ], responses: { 200: { description: Device created, schema: { $ref: #/definitions/DeviceInput } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/input/{id}: { get: { description: Return a device input, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of device input, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a device input, schema: { $ref: #/definitions/DeviceInput } }, 401: { description: Token is invalid or expired }, 404: { description: Device input not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/output: { get: { description: Return a array of device type output, tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return a list of device type output, schema: { type: array, items: { $ref: #/definitions/DeviceOutput } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a device type output, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Device, description: Device type output, required: true, schema: { $ref: #/definitions/DeviceOutput } } ], responses: { 200: { description: Device updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Device not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new device type output, Id field will be ignored, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Device, description: Device type output, required: true, schema: { $ref: #/definitions/DeviceOutput } } ], responses: { 200: { description: Device created, schema: { $ref: #/definitions/DeviceOutput } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/output/search: { get: { description: Search output device by name, tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: term, description: Term to search inside device name, required: true, type: string, minLength: 3 } ], responses: { 200: { description: Returns a list of output devices with name containing the term, schema: { type: array, items: { $ref: #/definitions/SimpleOutputDevice } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/output/inphysicallocation/{physicalLocationId}: { get: { description: Returns output devices in a specific physical location, tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: physicalLocationId, description: Physical location ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: Output devices, schema: { type: array, items: { $ref: #/definitions/SimpleOutputDevice } } }, 401: { description: Token is invalid or expired }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/output/{id}: { get: { description: Return a device output, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of device output, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a device output, schema: { $ref: #/definitions/DeviceOutput } }, 401: { description: Token is invalid or expired }, 404: { description: Device output not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/{id}: { get: { description: Return a basic device, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of device, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a Basic device, schema: { $ref: #/definitions/BasicDevice } }, 401: { description: Token is invalid or expired }, 404: { description: device not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a device, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of device, required: true, type: integer, format: int64 } ], responses: { 200: { description: Device deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Device not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/status:{ post:{ description: Update a device status, tags:[ Device ], produces:[ application/json ], parameters:[ { in:header, name:X-JWT-Assertion, description:WSO2 JWT token, required:true, type:string }, { in:body, name:status, description:Status of device, required:true, schema:{ $ref:#/definitions/DeviceCommunicationStatus } } ], responses:{ 200:{ description:Status added. }, 401:{ description:token is invalid }, 404:{ description:Device not found }, 500:{ description:Server error, schema:{ $ref:#/definitions/ErrorResponse } } } } }, /device/search: { get: { description: Auto complete search to device, tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: term, description: Term of device name, required: true, type: string, minLength: 3 }, { in: query, name: status, description: Device situation filter (0=ALL, 1=ONLY ACTIVE), required: true, type: integer } ], responses: { 200: { description: A array of basic info from device limited by 10 results, schema: { type: array, items: { $ref: #/definitions/DeviceWithPath } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/availableForCamera: { get: { description: Auto complete search of device (reader or input) to camera, tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: term, description: Term of device name, required: true, type: string, minLength: 3 } ], responses: { 200: { description: A array of basic info from device limited by 10 results, schema: { type: array, items: { $ref: #/definitions/SimpleDevice } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/availableForCamera/all: { get: { description: get device (reader or input) to camera, tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: cameraId, description: Camera identifier filter, required: true, type: integer, format: int64 } ], responses: { 200: { description: A array of basic info from device, schema: { type: array, items: { $ref: #/definitions/SimpleDevice } } }, 401: { description: Token is invalid or expired }, 404: { description: Camera not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/availableForCamera/pagedsearch/all: { get: { description: get device (reader or input) to camera paginated, tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: cameraId, description: Camera identifier filter, required: true, type: integer, format: int64 }, { in: query, name: page, description: Page number, required: true, type: integer }, { in: query, name: pageSize, description: Size of page, required: true, type: integer } ], responses: { 200: { description: A paged array of basic info from device, schema: { type: array, items: { $ref: #/definitions/SimpleDevice } } }, 401: { description: Token is invalid or expired }, 404: { description: Camera not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/{id}/children: { get: { description: Return array of children from a parent device, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of parent device, required: true, type: integer, format: int64 }, { in: query, name: status, description: Device situation filter (0=ALL, 1=ONLY ACTIVE), required: true, type: integer } ], responses: { 200: { description: A array of clildren from a parent device, schema: { type: array, items: { $ref: #/definitions/DeviceChildren } } }, 401: { description: Token is invalid or expired }, 404: { description: Device parent not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/{id}/path: { get: { description: Return a device path, tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Device ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: The device path, schema: { type: array, items: { $ref: #/definitions/DeviceWithPath } } }, 401: { description: Token is invalid or expired }, 404: { description: device not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/biometricreaders: { get: { description: Return all biometric readers, tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: parentId, description: Reader parent, required: true, type: integer, format: int64 } ], responses: { 200: { description: A array of basic info from device, schema: { type: array, items: { $ref: #/definitions/SimpleDevice } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/urnsensor/search: { get: { description: All children of the type entry of the same manager of the reader., tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: term, description: Term of device name, required: true, type: string, minLength: 3 }, { in: query, name: parent, description: Parent of device, required: true, type: integer, format: int64 } ], responses: { 200: { description: A array of basic info from device, schema: { type: array, items: { $ref: #/definitions/SimpleDevice } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/{parentId}/outputactuation/{id}: { get: { description: All the sons (and sons of device if exist) of the parent device that are the output type., tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: parentId, description: Parent ID, required: true, type: integer, format: int64 }, { in: path, name: id, description: Device ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: A array of basic info from device, schema: { type: array, items: { $ref: #/definitions/SimpleDevice } } }, 401: { description: Token is invalid or expired }, 404: { description: Parent device not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/command/collectevents: { post: { description: Send a command of collect events., tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Command, description: Device command, required: true, schema: { $ref: #/definitions/CollectEventCommand } } ], responses: { 200: { description: Command sent, schema: { $ref: #/definitions/DeviceCommand } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/command: { post: { description: Send a new command to device, Id field will be ignored., tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Command, description: Device command, required: true, schema: { $ref: #/definitions/DeviceCommand } } ], responses: { 200: { description: Command sent, schema: { $ref: #/definitions/DeviceCommand } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/command/cancel: { post: { description: Send a command cancellation., tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Command, description: Command to cancel, required: true, schema: { $ref: #/definitions/DeviceCommandCancel } } ], responses: { 200: { description: Command sent }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Command not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/command/status: { post: { description: Send a list of commands to return the status., tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: CommandList, description: Command list to return the status, required: true, schema: { type: array, items: { $ref: #/definitions/DeviceCommandStatus } } } ], responses: { 200: { description: Command status list, schema: { type: array, items: { $ref: #/definitions/DeviceCommandStatus } } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/command/{commandId}/detail/devicestatus: { get: { description: Retrieves device status command execution detail, tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: commandId, description: Command identifier, required: true, type: integer, format: int64 } ], responses: { 200: { description: Device status command detail, schema: { type: array, items: { $ref: #/definitions/DeviceStatusProperty } } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Command not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/command/{commandId}/detail/inputstatus: { get: { description: Retrieves input status command execution detail, tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: commandId, description: Command identifier, required: true, type: integer, format: int64 } ], responses: { 200: { description: Input status command detail, schema: { type: array, items: { $ref: #/definitions/InputStatusDetail } } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Command not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/{deviceId}/command/displayMessage: { post: { description: Sends a text message to device display., tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: deviceId, description: Device identifier, required: true, type: integer, format: int64 }, { in: body, name: displayMessage, description: Text message parameters, required: true, schema: { $ref: #/definitions/DeviceDisplayMessage } } ], responses: { 200: { description: Command identifier, schema: { type: integer, format: int64 } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Device not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/repproperty: { get: { description: Return a array of REP properties, tags: [ Device ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return a list of REP properties, schema: { type: array, items: { $ref: #/definitions/PropertyREP } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a REP property, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: REP, description: REP property, required: true, schema: { $ref: #/definitions/PropertyREP } } ], responses: { 200: { description: REP property updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: REP property not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new REP property, Id field will be ignored, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: REP, description: REP property, required: true, schema: { $ref: #/definitions/PropertyREP } } ], responses: { 200: { description: REP property created, schema: { $ref: #/definitions/PropertyREP } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/repproperty/{id}: { get: { description: Return a REP property, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of REP property, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a REP property, schema: { $ref: #/definitions/PropertyREP } }, 401: { description: Token is invalid or expired }, 404: { description: REP property not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a REP property, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of REP property, required: true, type: integer, format: int64 } ], responses: { 200: { description: REP property deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: REP property not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/rep: { get: { description: Return a REP property list, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return a REP property list, schema: { $ref: #/definitions/BasicREP } }, 401: { description: Token is invalid or expired }, 404: { description: REP property not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/download/afd: { post: { description: Download AFD file., tags: [ Device ], consumes: [ application/json ], produces: [ application/json, application/zip ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: DownloadAFD, description: Download AFD, required: true, schema: { $ref: #/definitions/DownloadAFD } } ], responses: { 200: { description: Download AFD file, schema: { type: file } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/card: { put: { description: Update a holder credential of card type, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Basic Credential, description: Basic Credential, required: true, schema: { $ref: #/definitions/BasicCredential } } ], responses: { 200: { description: Holder credential of card type updated }, 401: { description: Token is invalid or expired }, 403: { description: No permission to holder credential of card type update }, 404: { description: Holder credential of card type not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new holder credential of card type, Id field will be ignored, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Card Credential, description: Card Credential, required: true, schema: { $ref: #/definitions/CardCredential } } ], responses: { 200: { description: Holder credential of card type, schema: { $ref: #/definitions/CardCredential } }, 401: { description: Token is invalid or expired }, 403: { description: No permission to insert holder credential of card type }, 500: { description: Server error, the error param is person name, schema: { $ref: #/definitions/ErrorWithParamsResponse } } } } }, /credential/card/{id}: { get: { description: Return a holder credential of card type, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of holder credential of card type, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a holder credential of card type, schema: { $ref: #/definitions/CardCredential } }, 401: { description: Token is invalid or expired }, 404: { description: holder credential of card type not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a holder credential of card type, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of holder credential of card type, required: true, type: integer, format: int64 } ], responses: { 200: { description: holder credential of card type deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: holder credential of card type not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/person/{personId}/card: { get: { description: Returns all holder card credentials held by a person., tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: personId, description: Person to load credentials, required: true, type: integer, format: int64 } ], responses: { 200: { description: Returns all holder card credentials held by a person., schema: { type: array, items: { $ref: #/definitions/CardCredential } } }, 401: { description: Token is invalid or expired }, 404: { description: Person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/person/{personId}/provisory/card: { get: { description: Returns all valid provisory card credentials held by a person., tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: personId, description: Person to load credentials, required: true, type: integer, format: int64 } ], responses: { 200: { description: Returns all valid provisory card credentials held by a person., schema: { type: array, items: { $ref: #/definitions/BasicInformationCardCredential } } }, 401: { description: Token is invalid or expired }, 404: { description: Person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/biometric: { put: { description: Update a holder credential of biometric type, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Basic Credential, description: Basic Credential, required: true, schema: { $ref: #/definitions/BasicCredential } } ], responses: { 200: { description: Holder credential of biometric type updated }, 401: { description: Token is invalid or expired }, 403: { description: No permission to holder credential of biometric type update }, 404: { description: Holder credential of biometric type not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new holder credential of biometric type, Id field will be ignored, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Biometry, description: PersonBiometry, required: true, schema: { $ref: #/definitions/PersonBiometry } } ], responses: { 200: { description: Holder credential of biometric type, schema: { $ref: #/definitions/BiometricCredential } }, 401: { description: Token is invalid or expired }, 403: { description: No permission to insert holder credential of biometric type }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/biometric/{id}: { get: { description: Return a holder credential of biometric type, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of holder credential of biometric type, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a holder credential of biometric type, schema: { $ref: #/definitions/BiometricCredential } }, 401: { description: Token is invalid or expired }, 404: { description: holder credential of biometric type not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a holder credential of biometric type, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of holder credential of biometric type, required: true, type: integer, format: int64 } ], responses: { 200: { description: holder credential of biometric type deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: holder credential of biometric type not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/person/{personId}/biometry: { get: { description: Return all biometric credential from person, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: personId, description: Person to load credentials, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return all biometric credential from person, schema: { type: array, items: { $ref: #/definitions/BiometricCredential } } }, 401: { description: Token is invalid or expired }, 404: { description: Person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/vehicle/card: { post: { description: Creates a new vehicle card credential (id field must be zero), tags: [ Vehicle Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: vehicleCardCredential, description: Vehicle card credential, required: true, schema: { $ref: #/definitions/VehicleCardCredential } } ], responses: { 200: { description: Credential created, schema: { $ref: #/definitions/VehicleCardCredential } }, 401: { description: Token is invalid or expired }, 403: { description: Permission denied }, 404: { description: Vehicle not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Updates a vehicle card credential, tags: [ Vehicle Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: vehicleCredentialUpdate, description: Credential data to update, required: true, schema: { $ref: #/definitions/VehicleCredentialUpdate } } ], responses: { 200: { description: Credential updated }, 401: { description: Token is invalid or expired }, 403: { description: Permission denied }, 404: { description: Vehicle or credential not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/vehicle/{vehicle_id}/card: { get: { description: Returns a set of vehicle card credentials, tags: [ Vehicle Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: vehicle_id, description: Vehicle identifier, required: true, type: integer, format: int64 } ], responses: { 200: { description: Set of vehicle card credentials, schema: { type: array, items: { $ref: #/definitions/VehicleCardCredential } } }, 401: { description: Token is invalid or expired }, 404: { description: Vehicle not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/vehicle/{vehicle_id}/card/{credential_id}: { get: { description: Returns a vehicle card credential, tags: [ Vehicle Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: vehicle_id, description: Vehicle identifier, required: true, type: integer, format: int64 }, { in: path, name: credential_id, description: Credential identifier, required: true, type: integer, format: int64 } ], responses: { 200: { description: Vehicle card credential, schema: { $ref: #/definitions/VehicleCardCredential } }, 401: { description: Token is invalid or expired }, 404: { description: Vehicle or credential not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Deletes a vehicle card credential, tags: [ Vehicle Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: vehicle_id, description: Vehicle identifier, required: true, type: integer, format: int64 }, { in: path, name: credential_id, description: Credential identifier, required: true, type: integer, format: int64 } ], responses: { 200: { description: Credential deleted }, 401: { description: Token is invalid or expired }, 403: { description: Permission denied }, 404: { description: Vehicle or credential not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/provisory/card: { put: { description: Update a provisory credential of card type, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Basic Credential, description: Basic Credential, required: true, schema: { $ref: #/definitions/BasicCredential } } ], responses: { 200: { description: Provisory credential of card type updated }, 401: { description: Token is invalid or expired }, 403: { description: No permission to holder credential of card type update }, 404: { description: Provisory credential of card type not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new provisory credential of card type, Id field will be ignored, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Provisory Card Credential, description: Provisory Card Credential, required: true, schema: { $ref: #/definitions/ProvisoryCardCredential } }, { in: query, name: checkedOverlap, description: Checked overlap, required: false, type: boolean } ], responses: { 200: { description: Provisory credential of card type, schema: { $ref: #/definitions/ProvisoryCardCredential } }, 401: { description: Token is invalid or expired }, 403: { description: No permission to insert holder credential of card type }, 500: { description: Server error, the error param is person name, schema: { $ref: #/definitions/ErrorWithParamsResponse } } } } }, /credential/provisory/card/{id}: { get: { description: Return a provisory credential of card type, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of provisory credential of card type, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a provisory credential of card type, schema: { $ref: #/definitions/ProvisoryCardCredential } }, 401: { description: Token is invalid or expired }, 404: { description: Provisory credential of card type not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a provisory credential of card type, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of provisory credential of card type, required: true, type: integer, format: int64 } ], responses: { 200: { description: Provisory credential of card type deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Provisory credential of card type not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/provisory/biometric: { put: { description: Update a provisory credential of biometric type, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Basic Credential, description: Basic Credential, required: true, schema: { $ref: #/definitions/BasicCredential } } ], responses: { 200: { description: Provisory credential of biometric type updated }, 401: { description: Token is invalid or expired }, 403: { description: No permission to holder credential of biometric type update }, 404: { description: Provisory credential of biometric type not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new provisory credential of biometric type, Id field will be ignored, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Provisory Biometric Credential, description: Provisory Biometric Credential, required: true, schema: { $ref: #/definitions/ProvisoryBiometricCredential } }, { in: query, name: checkedOverlap, description: Checked overlap, required: false, type: boolean } ], responses: { 200: { description: Provisory credential of biometric type, schema: { $ref: #/definitions/ProvisoryBiometricCredential } }, 401: { description: Token is invalid or expired }, 403: { description: No permission to insert holder credential of biometric type }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/provisory/biometric/{id}: { get: { description: Return a provisory credential of biometric type, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of provisory credential of biometric type, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a provisory credential of biometric type, schema: { $ref: #/definitions/ProvisoryBiometricCredential } }, 401: { description: Token is invalid or expired }, 404: { description: Provisory credential of biometric type not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a provisory credential of biometric type, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of provisory credential of biometric type, required: true, type: integer, format: int64 } ], responses: { 200: { description: Provisory credential of biometric type deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Provisory credential of biometric type not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/provisory/pagedsearch: { get: { description: Return all card credential from person, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: page, description: Page number, required: true, type: integer }, { in: query, name: pageSize, description: Size of page, required: true, type: integer }, { in: query, name: term, description: Term of person name or document, required: false, type: string, minLength: 3 }, { in: query, name: card, description: Card number, required: false, type: integer, format: int64 }, { in: query, name: documentTypeId, description: Document type ID. This document type will be used as a filter in the search, required: false, type: integer, format: int64 } ], responses: { 200: { description: Return all credentials from person, schema: { $ref: #/definitions/ProvisoryCredentials } }, 401: { description: Token is invalid or expired }, 404: { description: Person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incidenttype: { get: { description: Return a array of Incident Type, tags: [ Incident Type ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: A array of Incident Type, schema: { type: array, items: { $ref: #/definitions/IncidentType } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a Incident Type. Emails and actions fields will be ignored, tags: [ Incident Type ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Incident Type, description: Incident Type, required: true, schema: { $ref: #/definitions/IncidentType } } ], responses: { 200: { description: Incident Type updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Incident Type not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new Incident Type. Id, emails and actions fields will be ignored, tags: [ Incident Type ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Incident Type, description: Incident Type, required: true, schema: { $ref: #/definitions/IncidentType } } ], responses: { 200: { description: Incident type created, schema: { $ref: #/definitions/IncidentType } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incidenttype/{id}: { get: { description: Return a Incident Type, tags: [ Incident Type ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Incident Type, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a Incident Type, schema: { $ref: #/definitions/IncidentType } }, 401: { description: Token is invalid or expired }, 404: { description: Incident Type not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a Incident Type, tags: [ Incident Type ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Incident Type, required: true, type: integer, format: int64 } ], responses: { 200: { description: Incident deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Incident Type not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incidenttype/{id}/email: { post: { description: Add a reaction email to incident type, tags: [ Incident Type ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Incident Type, required: true, type: integer, format: int64 }, { in: body, name: email, description: Reaction email, required: true, schema: { $ref: #/definitions/ReactionEmail } } ], responses: { 200: { description: Return the reaction email, schema: { $ref: #/definitions/ReactionEmail } }, 401: { description: Token is invalid or expired }, 404: { description: Incident Type not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incidenttype/email/{emailId}: { delete: { description: Remove the reaction email associated with incident type, tags: [ Incident Type ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: emailId, description: Id of reaction email, required: true, type: integer, format: int64 } ], responses: { 200: { description: Reaction email was removed with success }, 401: { description: Token is invalid or expired }, 403: { description: Permission denied }, 404: { description: Reaction email not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incidenttype/{id}/action: { post: { description: Add an incident type action. Name and deviceType fields in output object will be ignored, tags: [ Incident Type ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of Incident Type, required: true, type: integer, format: int64 }, { in: body, name: action, description: Incident type action, required: true, schema: { $ref: #/definitions/IncidentTypeAction } } ], responses: { 200: { description: Return the incident type action, schema: { $ref: #/definitions/IncidentTypeAction } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Incident Type not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incidenttype/{incidentTypeId}/actions: { post: { description: Adds a collection of incident type actions. Name and deviceType fields in output objects should be ignored., tags: [ Incident Type ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: incidentTypeId, description: Incident type ID, required: true, type: integer, format: int64 }, { in: body, name: actions, description: Incident type actions, required: true, schema: { type: array, items: { $ref: #/definitions/IncidentTypeAction } } } ], responses: { 200: { description: Collection of incident type actions., schema: { type: array, items: { $ref: #/definitions/IncidentTypeAction } } }, 401: { description: Token is invalid or expired. }, 403: { description: Permission denied. }, 404: { description: Incident type not found. }, 500: { description: Server error., schema: { $ref: #/definitions/ErrorResponse } } } } }, /incidenttype/action/{actionId}: { delete: { description: Remove the action associated with incident type, tags: [ Incident Type ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: actionId, description: Id of action, required: true, type: integer, format: int64 } ], responses: { 200: { description: Incident type action was removed with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Incident type action not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incidenttype/{incidentTypeId}/reactionmanagerdevice/{managerDeviceId}: { post: { description: Associates a manager device to incident type reaction, tags: [ Incident Type ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: incidentTypeId, description: Incident type ID, required: true, type: integer, format: int64 }, { in: path, name: managerDeviceId, description: Manager device ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: Created with success }, 401: { description: Token is invalid or expired }, 403: { description: Permission denied }, 404: { description: Incident type or manager device not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Removes manager device from incident type reaction, tags: [ Incident Type ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: incidentTypeId, description: Incident type ID, required: true, type: integer, format: int64 }, { in: path, name: managerDeviceId, description: Manager device ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: Removed with success }, 401: { description: Token is invalid or expired }, 403: { description: Permission denied }, 404: { description: Association not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incidenttype/{incidentTypeId}/reactionmanagerdevices: { post: { description: Associates a collection of manager devices to incident type reaction., tags: [ Incident Type ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: incidentTypeId, description: Incident type ID, required: true, type: integer, format: int64 }, { in: body, name: managerDevices, description: Manager devices collection IDs., required: true, schema: { type: array, items: { type: integer, format: int64 } } } ], responses: { 200: { description: Success. }, 401: { description: Token is invalid or expired. }, 403: { description: Permission denied. }, 404: { description: Incident type or manager device not found. }, 500: { description: Server error., schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/provisory/pagedsearchbasic: { get: { description: Return all basic information from card credential from person, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: page, description: Page number, required: true, type: integer }, { in: query, name: pageSize, description: Size of page, required: true, type: integer }, { in: query, name: term, description: Term of person name or document, required: false, type: string, minLength: 3 }, { in: query, name: card, description: Card number, required: false, type: integer, format: int64 }, { in: query, name: documentTypeId, description: Document type ID. This document type will be used as a filter in the search, required: false, type: integer, format: int64 } ], responses: { 200: { description: Return all credentials from person, schema: { type: array, items: { $ref: #/definitions/BasicCardCredential } } }, 401: { description: Token is invalid or expired }, 404: { description: Person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/qrcode: { get: { description: Return a holder credential of qrcode type, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return a holder credential of qrcode type, schema: { $ref: #/definitions/QRCodeCredential } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/bluetooth: { get: { description: Return a holder credential of bluetooth type, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return a holder credential of bluetooth type, schema: { $ref: #/definitions/BasicCredential } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/provisory/greater/{id}: { get: { description: Get a list of credential with id greater than parameter id, tags: [ Credential ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Credential id, required: true, type: integer, format: int64 } ], responses: { 200: { description: A list of credential, schema: { type: array, items: { $ref: #/definitions/ProvisoryCardCredential } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/provisory/reason/{id}: { delete: { description: Removes the provisory credential reason, tags: [ Credential ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Provisory credential reason id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Removed with success }, 401: { description: Token is invalid or expired }, 403: { description: Permission denied }, 404: { description: Provisory credential reason not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/provisory/reasons: { get: { description: Get a list of provisory credential reasons, tags: [ Credential ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: active, description: An optional parameter to filter provisory credential reasons by status, required: false, type: boolean } ], responses: { 200: { description: A list of provisory credential reason, schema: { type: array, items: { $ref: #/definitions/ProvisoryCredentialReason } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /credential/provisory/reason: { post: { description: Create a new provisory credential reason if the id is equal 0 or update if the id is different from 0, tags: [ Credential ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Provisory credential reason, description: Provisory credential reason, required: true, schema: { $ref: #/definitions/ProvisoryCredentialReason } } ], responses: { 200: { description: Provisory credential reason, schema: { $ref: #/definitions/ProvisoryCredentialReason } }, 401: { description: Token is invalid or expired }, 403: { description: Permission denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incident: { post: { description: Create a new Incident, Id field will be ignored, tags: [ Incident ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Incident, description: Incident, required: true, schema: { $ref: #/definitions/Incident } } ], responses: { 200: { description: Incident created, schema: { $ref: #/definitions/Incident } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incident/status: { post: { description: Update status and create a new procedure., tags: [ Incident ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: IncidentStatus, description: New incident status, required: true, schema: { $ref: #/definitions/NewIncidentStatus } } ], responses: { 200: { description: Return a array of all procedures from incident., schema: { type: array, items: { $ref: #/definitions/IncidentProcedureSearch } } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incident/pagedsearch/all: { get: { description: Return a paginated array of all incidents from user, tags: [ Incident ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: page, description: page, required: true, type: integer }, { in: query, name: pageSize, description: pageSize, required: true, type: integer } ], responses: { 200: { description: Return a paginated array of all incidents from user, schema: { type: array, items: { $ref: #/definitions/BasicIncident } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incident/{incidentId}/person/{personId}: { post: { description: Add an person to incident, produces: [ application/json ], tags: [ Incident ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: incidentId, description: Id of incident, required: true, type: integer, format: int64 }, { in: path, name: personId, description: Id of person, required: true, type: integer, format: int64 } ], responses: { 200: { description: Person added with success }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Incident or person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incident/{incidentId}/attachments: { post: { description: Add an attachment to incident, consumes: [ multipart/form-data ], produces: [ application/json ], tags: [ Incident ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: incidentId, description: Id of incident, required: true, type: integer, format: int64 }, { name: file, in: formData, type: file, required: true } ], responses: { 200: { description: Incident attachment view, schema: { $ref: #/definitions/IncidentAttachment } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incident/{incidentId}/attachments/{incidentAttachmentId}: { delete: { description: Delete an attachment from an incident, consumes: [ application/json ], produces: [ application/json ], tags: [ Incident ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: incidentId, description: Id of incident, required: true, type: integer, format: int64 }, { in: path, name: incidentAttachmentId, description: Incident attachment id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Association deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Association not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incident/search/physicallocation/{physicalLocationId}: { get: { description: Return a array of all incidents from physical location, tags: [ Incident ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: physicalLocationId, description: Id of physical location, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a array of all incidents from physical location, schema: { type: array, items: { $ref: #/definitions/BasicIncident } } }, 401: { description: Token is invalid or expired }, 404: { description: Physical location not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incident/pagedsearch/notification: { get: { description: Return a paginated array of pending incidents for notification, tags: [ Incident ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: page, description: page, required: true, type: integer }, { in: query, name: pageSize, description: pageSize, required: true, type: integer } ], responses: { 200: { description: Return a paginated array of pending incidents for notification, schema: { type: array, items: { $ref: #/definitions/BasicIncident } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incident/priority/{incidentId}: { put: { description: Changes the priority of the incident, tags: [ Incident ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: incidentId, description: Id of incident, required: true, type: integer, format: int64 }, { in: body, name: priority, description: incident priority, required: true, schema: { $ref: #/definitions/IncidentPriorityUpdated } } ], responses: { 200: { description: Successfully. }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /report/access: { post: { description: Report of access, tags: [ Report ], consumes: [ application/json ], produces: [ application/json, application/pdf ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: options, description: Report filters, required: true, schema: { $ref: #/definitions/AccessReportFilter } } ], responses: { 200: { description: Report of access, schema: { type: file } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Physical location or person not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /clocking/pagesearch: { post: { description: Return a paginated array of clocking, tags: [ Clocking ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: options, description: Clocking search filters, required: true, schema: { $ref: #/definitions/ClockingSearch } } ], responses: { 200: { description: A list of clocking, schema: { type: array, items: { $ref: #/definitions/Clocking } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /clocking/recover/batch: { put: { description: Tries to recover a clocking batch, tags: [ Clocking ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: clockingToRecover, description: Clocking identifier batch, required: true, schema: { type: array, items: { type: integer, format: int64 } } } ], responses: { 200: { description: Recovery status containing the number of records ok/fault, schema: { $ref: #/definitions/RecoveryStatus } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /clocking/recover/filter: { put: { description: Tries to recover clocking on filter range, tags: [ Clocking ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: options, description: Clocking search filters, required: true, schema: { $ref: #/definitions/ClockingSearch } } ], responses: { 200: { description: Recovery status containing the number of records ok/fault, schema: { $ref: #/definitions/RecoveryStatus } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /contingency/synchronize/cardcredential: { post: { description: Synchronizes a credential created under contingency application, tags: [ Contingency ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: contingencyCardCredential, description: Contingency Card Credential, required: true, schema: { $ref: #/definitions/ContingencyCardCredential } } ], responses: { 200: { description: Credential successfully synchronized }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /vehicle/{id}/personassociation: { get: { description: Return all person associated with the vehicle, tags: [ Vehicle ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Vehicle Id, required: true, type: integer, format: int64 } ], responses: { 200: { description: A list of person association, schema: { type: array, items: { $ref: #/definitions/PersonVehicle } } }, 401: { description: Token is invalid or expired }, 404: { description: Vehicle not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /vehicle/personassociation/{id}/finalize: { post: { description: Finalize an association, tags: [ Vehicle ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Association Id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Association finalized }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Association not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /vehicle/personassociation/{id}: { delete: { description: Delete an association, tags: [ Vehicle ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Association Id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Association deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Association not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /vehicle/personassociation: { post: { description: Creates a new association, tags: [ Vehicle ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: vehicle, description: Vehicle, required: true, schema: { $ref: #/definitions/PersonVehicle } } ], responses: { 200: { description: Association created, schema: { $ref: #/definitions/Vehicle } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Person or vehicle not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update an association, tags: [ Vehicle ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: vehicle, description: Vehicle, required: true, schema: { $ref: #/definitions/PersonVehicle } } ], responses: { 200: { description: Vehicle association updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Person or vehicle not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /vehicle: { put: { description: Updates a vehicle, tags: [ Vehicle ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: vehicle, description: Vehicle, required: true, schema: { $ref: #/definitions/Vehicle } } ], responses: { 200: { description: Vehicle updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Vehicle not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Creates a new vehicle, tags: [ Vehicle ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: vehicle, description: Vehicle, required: true, schema: { $ref: #/definitions/Vehicle } } ], responses: { 200: { description: Vehicle created, schema: { $ref: #/definitions/Vehicle } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /vehicle/{vehicleId}: { get: { description: Returns a vehicle, tags: [ Vehicle ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: vehicleId, description: Vehicle id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Vehicle caught, schema: { $ref: #/definitions/Vehicle } }, 401: { description: Token is invalid or expired }, 404: { description: Vehicle not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Deletes a vehicle, tags: [ Vehicle ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: vehicleId, description: Vehicle id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Vehicle deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Vehicle not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /vehicle/search/licenseplate: { get: { description: Paged search over vehicles license plate, tags: [ Vehicle ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: term, description: Term to search in license plate, required: true, type: string, minLength: 3 }, { in: query, name: page, description: Page number, required: true, type: integer }, { in: query, name: pageSize, description: Size of page, required: true, type: integer } ], responses: { 200: { description: A list of vehicles matching the term in license plate, schema: { type: array, items: { $ref: #/definitions/Vehicle } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /virtualbarrier: { get: { description: Virtual barriers list, tags: [ Virtual Barrier ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return virtual barriers list, schema: { $ref: #/definitions/VirtualBarriers } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Updates a virtual barrier, tags: [ Virtual Barrier ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Virtual barrier, description: Virtual barrier, required: true, schema: { $ref: #/definitions/VirtualBarrier } } ], responses: { 200: { description: Virtual barrier updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Virtual barrier not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Creates a new virtual barrier, tags: [ Virtual Barrier ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Virtual barrier, description: Virtual barrier, required: true, schema: { $ref: #/definitions/VirtualBarrier } } ], responses: { 200: { description: Virtual barrier created, schema: { $ref: #/definitions/VirtualBarrier } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /virtualbarrier/{virtualBarrierId}: { get: { description: Returns a virtual barrier, tags: [ Virtual Barrier ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: virtualBarrierId, description: Virtual barrier id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Virtual barrier caught, schema: { $ref: #/definitions/VirtualBarrier } }, 401: { description: Token is invalid or expired }, 404: { description: Virtual barrier not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Deletes a virtual barrier, tags: [ Virtual Barrier ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: virtualBarrierId, description: Virtual barrier id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Virtual barrier deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Virtual barrier not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /selfserviceterminal/property: { get: { description: Return a array of self-service terminal properties, tags: [ Self-service Terminal ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return a list of self-service terminal properties, schema: { type: array, items: { $ref: #/definitions/SelfServiceTerminalProperty } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a self-service terminal property, tags: [ Self-service Terminal ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: SelfServiceTerminal, description: Self-service terminal property, required: true, schema: { $ref: #/definitions/SelfServiceTerminalProperty } } ], responses: { 200: { description: Self-service terminal property updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Self-service terminal property not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new self-service terminal property, Id field will be ignored, tags: [ Self-service Terminal ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: SelfServiceTerminal, description: Self-service terminal property, required: true, schema: { $ref: #/definitions/SelfServiceTerminalProperty } } ], responses: { 200: { description: Self-service terminal property created, schema: { $ref: #/definitions/SelfServiceTerminalProperty } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /selfserviceterminal/property/{id}: { get: { description: Return a self-service terminal property, tags: [ Self-service Terminal ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of self-service terminal property, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a self-service terminal property, schema: { $ref: #/definitions/SelfServiceTerminalProperty } }, 401: { description: Token is invalid or expired }, 404: { description: Self-service terminal property not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a self-service terminal property, tags: [ Self-service Terminal ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of self-service terminal property, required: true, type: integer, format: int64 } ], responses: { 200: { description: Self-service terminal property deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Self-service terminal property not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /selfserviceterminal/property/{id}/companylogo: { post: { description: Insert a company logo to the self service terminal properties, tags: [ Self-service Terminal ], consumes: [ multipart/form-data ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of self-service terminal property, required: true, type: integer, format: int64 }, { name: file, in: formData, type: file, required: true } ], responses: { 200: { description: Return a self-service terminal property company logo, schema: { $ref: #/definitions/SelfServiceTerminalPropertyCompanyLogo } }, 401: { description: Token is invalid or expired }, 404: { description: Self-service terminal property not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, get: { description: Return a self-service terminal property company logo, tags: [ Self-service Terminal ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of self-service terminal property, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a self-service terminal property company logo, schema: { $ref: #/definitions/SelfServiceTerminalPropertyCompanyLogo } }, 401: { description: Token is invalid or expired }, 404: { description: Self-service terminal property not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /selfserviceterminal: { get: { description: Return a array of self-service terminals, tags: [ Self-service Terminal ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: status, description: Status filter, (0 for all – default, 1 for list only active), required: false, type: integer } ], responses: { 200: { description: Return a list of self-service terminals, schema: { type: array, items: { $ref: #/definitions/SelfServiceTerminal } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, put: { description: Update a self-service terminal, tags: [ Self-service Terminal ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: SelfServiceTerminal, description: Self-service terminal, required: true, schema: { $ref: #/definitions/SelfServiceTerminal } } ], responses: { 200: { description: Self-service terminal updated }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Self-service terminal not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, post: { description: Create a new self-service terminal, Id field will be ignored, tags: [ Self-service Terminal ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: SelfServiceTerminal, description: Self-service terminal property, required: true, schema: { $ref: #/definitions/SelfServiceTerminal } } ], responses: { 200: { description: Self-service terminal created, schema: { $ref: #/definitions/SelfServiceTerminal } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /selfserviceterminal/{id}: { get: { description: Return a self-service terminal, tags: [ Self-service Terminal ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of self-service terminal, required: true, type: integer, format: int64 } ], responses: { 200: { description: Return a self-service terminal, schema: { $ref: #/definitions/SelfServiceTerminal } }, 401: { description: Token is invalid or expired }, 404: { description: Self-service terminal not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, delete: { description: Delete a self-service terminal, tags: [ Self-service Terminal ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of self-service terminal, required: true, type: integer, format: int64 } ], responses: { 200: { description: Self-service terminal deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Self-service terminal not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /accessrecords: { get: { description: Return the Access Records, tags: [ Access Records ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: recordId, description: Record Id, required: false, type: integer, format: int64 }, { in: query, name: deviceId, description: Device Id, required: false, type: integer, format: int64 }, { in: query, name: accessRecordType, description: Access Record Type, required: false, type: integer }, { in: query, name: accessRecordsLimit, description: Access Records Limit, required: false, type: integer } ], responses: { 200: { description: Return the Access Records, schema: { type: array, items: { $ref: #/definitions/AccessRecords } } }, 401: { description: Token is invalid or expired }, 404: { description: Access Record not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /integrator/device: { get: { description: Find all integrated devices, tags: [ Integrator ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: List of integrated device ids, schema: { type: array, items: { type: integer, format: int64 } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incident/dashboard: { get: { description: Return incidents grouped by status and the total number of incidents by priority, tags: [ Incident ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Incidents grouped by status and the total number of incidents by priority, schema: { $ref: #/definitions/IncidentDashboard } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incident/done/count: { get: { description: Count incidentes done between dates, tags: [ Incident ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: startingAt, description: Starting date, required: true, type: string }, { in: query, name: endingAt, description: Ending date, required: true, type: string } ], responses: { 200: { description: Completed incidents number between given dates, schema: { type: integer, format: int64 } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incident/physicallocation/count: { get: { description: Return incidents grouped by physical location, tags: [ Incident ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: startingAt, description: Starting date, required: true, type: string }, { in: query, name: endingAt, description: Ending date, required: true, type: string } ], responses: { 200: { description: Return incidents grouped by physical location, schema: { $ref: #/definitions/IncidentsByPhysicalLocation } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incident/priority/count: { get: { description: Return incidents grouped by priority, tags: [ Incident ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: startingAt, description: Starting date, required: true, type: string }, { in: query, name: endingAt, description: Ending date, required: true, type: string } ], responses: { 200: { description: Incidents grouped by priority, schema: { $ref: #/definitions/IncidentsByPriority } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incident/incidenttype/count: { get: { description: List of incidents grouped by type between given dates., tags: [ Incident ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: startingAt, description: Starting date, required: true, type: string }, { in: query, name: endingAt, description: Ending date, required: true, type: string } ], responses: { 200: { description: List of incidents by type of incidents, schema: { type: array, items: { $ref: #/definitions/IncidentsByType } } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incident/responsetime/average: { get: { description: Calculate the incidents average response time, tags: [ Incident ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: startingAt, description: Starting date, required: true, type: string }, { in: query, name: endingAt, description: Ending date, required: true, type: string } ], responses: { 200: { description: Incidents average response time, schema: { type: number, format: double } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incident/solutiontime/average: { get: { description: Calculate the incidents average solution time, tags: [ Incident ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: startingAt, description: Starting date, required: true, type: string }, { in: query, name: endingAt, description: Ending date, required: true, type: string } ], responses: { 200: { description: Incidents average solution time, schema: { type: number, format: double } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /incident/annual-summary: { get: { description: Return incidents from last year grouped by month, tags: [ Incident ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Incidents from last year grouped by month, schema: { type: array, items: { $ref: #/definitions/IncidentsByMonth } } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /integrator/pendency/pending: { get: { description: Return all pendencies pending, tags: [ Integrator ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Return all pendencies pending. Limited to 50., schema: { type: array, items: { $ref: #/definitions/Pendency } } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /integrator/pendency/success: { post: { description: Set pendency executed, tags: [ Integrator ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: Pendency, description: Pendency, required: true, schema: { $ref: #/definitions/PendencyExecuted } } ], responses: { 200: { description: Pendency was marked as done }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /integrator/notify/input/alarm: { post: { description: Notify a list of input alarm, tags: [ Integrator ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: alarms, description: List of input alarm, required: true, schema: { type:array, items: { $ref: #/definitions/Alarm } } } ], responses: { 200: { description: List of alarms that were rejected, schema: { type: array, items: { $ref: #/definitions/Alarm } } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /integrator/notify/person/access: { post: { description: Notify a list of person access, tags: [ Integrator ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: access, description: List of person access, required: true, schema: { type:array, items: { $ref: #/definitions/Access } } } ], responses: { 200: { description: List of person access that were rejected, schema: { type: array, items: { $ref: #/definitions/Access } } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /integrator/notify/person/clockin: { post: { description: Notify a list of person clock in, tags: [ Integrator ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: clockIn, description: List of person clock in, required: true, schema: { type:array, items: { $ref: #/definitions/ClockIn } } } ], responses: { 200: { description: List of person clock in that were rejected, schema: { type: array, items: { $ref: #/definitions/ClockIn } } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /integrator/notify/device/event: { post: { description: Notify a list of device event, tags: [ Integrator ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: events, description: List of device event, required: true, schema: { type:array, items: { $ref: #/definitions/Event } } } ], responses: { 200: { description: List of device events that were rejected, schema: { type: array, items: { $ref: #/definitions/Event } } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /integrator/notify/device/resource: { post: { description: Notify a list of device resource, tags: [ Integrator ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: events, description: List of device resource, required: true, schema: { type:array, items: { $ref: #/definitions/Resource } } } ], responses: { 200: { description: List of device resources that were rejected, schema: { type: array, items: { $ref: #/definitions/Resource } } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /device/reader/head: { get: { description: Returns person information and devices grouped by the managers indicating where the logged user is allowed to access, tags: [ Device ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Person information and devices that have manager with head driver, schema: { $ref: #/definitions/BluetoothValidationAccess } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /integrator/presence/greater/{id}: { get: { description: Return presences with id greater than the received, tags: [ Integrator ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Presence id, required: true, type: integer, format: int64 } ], responses: { 200: { description: Presences, schema: { type: array, items: { $ref: #/definitions/Presence } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /accesscall/pagedsearch: { post: { description: Return a paged search of access call list where virtual lobby has physical location range., tags: [ Access Call ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: accessCallPagedSearch, description: Parameters for the search of access call, required: true, schema: { $ref: #/definitions/AccessCallPagedSearch } } ], responses: { 200: { description: Access call list, schema: { type: array, items: { $ref: #/definitions/AccessCall } } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /accesscall/{accessCallId}: { get: { description: Return an access call., tags: [ Access Call ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: accessCallId, description: Access Call ID, required: true, type: integer, format: int64 } ], responses: { 200: { description: Access call, schema: { $ref: #/definitions/AccessCall } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Access call not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /accesscall/status/{accessCallId}: { put: { description: Changes the status of the access call, tags: [ Access Call ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: accessCallId, description: Id of access call, required: true, type: integer, format: int64 }, { in: body, name: status, description: access call status, required: true, schema: { $ref: #/definitions/UpdateAccessCallStatus } } ], responses: { 200: { description: Updated access call, schema: { $ref: #/definitions/AccessCall } }, 401: { description: Token is invalid or expired }, 404: { description: Access call not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /accesscall/pending: { get: { description: Return a pending access call list where virtual lobby has physical location range., tags: [ Access Call ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: Pending access call list, schema: { type: array, items: { $ref: #/definitions/AccessCall } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /accesscall/search: { get: { description: Return an access call list where the access call status is equals with the status passed as parameter. The access call list is also filtered by user who is calling this service. If the user is an admin, than it will not be filtered by user., tags: [ Access Call ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: query, name: status, description: Status of access call used in the filter, required: true, schema: { $ref: #/definitions/AccessCallStatus } } ], responses: { 200: { description: Access call list filtered by status, schema: { type: array, items: { $ref: #/definitions/AccessCall } } }, 401: { description: Token is invalid or expired }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /feedbackpoll: { get: { description: Get all feedback poll questions with answers, tags: [ Feedback Poll ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string } ], responses: { 200: { description: All feedback poll questions with answers, type: array, items: { $ref: #/definitions/FeedbackPollQuestionWithAnswers } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /feedbackpoll/person/{personId}/answer/{answerId}: { post: { description: Save the feedback poll result., tags: [ Feedback Poll ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: personId, description: ID of the person, required: true, type: integer, format: int64 }, { in: path, name: answerId, description: ID of the answer, required: true, type: integer, format: int64 } ], responses: { 200: { description: Feedback poll result, schema: { $ref: #/definitions/FeedbackPollPersonAnswer } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /feedbackpoll/question: { post: { description: Creates a new feedback poll question, tags: [ Feedback Poll ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: FeedbackPollQuestion, description: Parameters for feedback poll question, required: true, schema: { $ref: #/definitions/FeedbackPollQuestion } } ], responses: { 200: { description: Feedback poll question, schema: { $ref: #/definitions/FeedbackPollQuestion } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /feedbackpoll/question/{id}: { delete: { description: Delete a feedback poll question, tags: [ Feedback Poll ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of feedback poll question, required: true, type: integer, format: int64 } ], responses: { 200: { description: Feedback poll question deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Feedback poll question not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } }, get: { description: Get feedback poll question, tags: [ Feedback Poll ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of feedback poll question, required: true, type: integer, format: int64 } ], responses: { 200: { description: Feedback poll question with answers, schema: { $ref: #/definitions/FeedbackPollQuestionWithAnswers } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Feedback poll question not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /feedbackpoll/answer: { post: { description: Creates a new feedback poll answer, tags: [ Feedback Poll ], consumes: [ application/json ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: body, name: FeedbackPollAnswer, description: Parameters for the feedback poll answer, required: true, schema: { $ref: #/definitions/FeedbackPollAnswer } } ], responses: { 200: { description: Feedback poll answer, schema: { $ref: #/definitions/FeedbackPollAnswer } }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /feedbackpoll/answer/{id}: { delete: { description: Delete a feedback poll answer, tags: [ Feedback Poll ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of feedback poll answer, required: true, type: integer, format: int64 } ], responses: { 200: { description: Feedback poll answer deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Feedback poll answer not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /selfserviceterminal/property/{id}/upload/{language}: { post: { description: Self-service terminal property file upload, tags: [ Self-service Terminal ], consumes: [ multipart/form-data ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of self-service property, required: true, type: integer, format: int64 }, { in: path, name: language, description: Self-service property file dictionary language, required: true, schema: { $ref: #/definitions/Language } }, { in: formData, name: file, type: file, description: File for the self-service terminal property, required: true } ], responses: { 200: { description: File uploaded }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Self-service property not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } }, /selfserviceterminal/property/{id}/upload/{language}/{filetype}: { delete: { description: Delete a self-service terminal property file, tags: [ Self-service Terminal ], produces: [ application/json ], parameters: [ { in: header, name: X-JWT-Assertion, description: WSO2 JWT token, required: true, type: string }, { in: path, name: id, description: Id of self-service property, required: true, type: integer, format: int64 }, { in: path, name: language, description: Self-service property file dictionary language, required: true, schema: { $ref: #/definitions/Language } }, { in: path, name: filetype, description: Self-service property file type, required: true, schema: { $ref: #/definitions/FileType } } ], responses: { 200: { description: File deleted }, 401: { description: Token is invalid or expired }, 403: { description: Operation denied }, 404: { description: Self-service property not found }, 500: { description: Server error, schema: { $ref: #/definitions/ErrorResponse } } } } } }, definitions: { VirtualBarrier: { type: object, properties: { id: { type: integer, format: int64 }, description: { type: string, maxLength: 50 }, timeout: { type: integer }, firstDevice: { $ref: #/definitions/SimpleDevice }, secondDevice: { $ref: #/definitions/SimpleDevice }, status: { type: boolean } } }, VirtualBarriers: { type: object, properties: { virtualBarriers: { type: array, items: { $ref: #/definitions/VirtualBarrier } } } }, Routine: { type: object, properties: { id: { description: (0=Role, 1=Person, 2=Physical Location, 3=Document Type, 4=Permission, 5=Locale, 6=Work Schedule), type: integer }, discontinued: { type: boolean } } }, ErrorResponse: { type: object, properties: { id: { type: string }, code: { type: integer }, message: { type: string } } }, ErrorWithParamsResponse: { type: object, allOf: [ { $ref: #/definitions/ErrorResponse }, { type: object, properties: { params: { type: array, items: { type: string } } } } ] }, DocumentType: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string, minLength: 3, maxLength: 50 }, label: { type: string, maxLength: 20 }, mask: { type: string, maxLength: 30 }, required: { type: boolean }, documentToREP: { type: boolean } } }, ScheduledCredential: { type: object, properties: { id: { type: integer, format: int64 }, person: { $ref: #/definitions/SimplePerson }, schedulingDate: { type: string, maxLength: 12 }, credentialFormat: { type: integer }, role: { $ref: #/definitions/BasicRole }, group: { $ref: #/definitions/BasicGroup }, expirationDate: { type: string, maxLength: 12 }, visitedPerson: { $ref: #/definitions/SimplePerson }, visitedPlace: { $ref: #/definitions/PhysicalLocationWithPath } } }, Locale: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string, minLength: 3, maxLength: 50 }, language: { description: (0=PT_BR, 1=ES_ES, 2=EN_US), type: integer }, phoneMask: { type: string, maxLength: 30 }, zipcodeMask: { type: string, maxLength: 30 }, hourType: { description: (0=12h, 1=24h), type: integer }, dateType: { description: (0=DD/MM/AAAA, 1=MM/DD/AAAA), type: integer }, isDefault: { type: boolean } } }, BasicRole: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string, maxLength: 50 }, usesProvisory: { type: boolean }, sendEmailToVisited: { type: boolean }, receivesVisit: { type: boolean }, usedBySelfServiceTerminal: { type: boolean } } }, Role: { type: object, allOf: [ { $ref: #/definitions/BasicRole }, { type: object, properties: { validateLevel: { description: (0=DISABLED, 1=ENABLED, 2=NOT_CONFIGURED), type: integer }, validateAntiPassback: { description: (0=DISABLED, 1=ENABLED, 2=NOT_CONFIGURED), type: integer }, validateStocking: { description: (0=DISABLED, 1=ENABLED, 2=NOT_CONFIGURED), type: integer }, validateCreditAccess: { description: (0=DISABLED, 1=ENABLED, 2=NOT_CONFIGURED), type: integer }, validateScaleRange: { description: (0=DISABLED, 1=ENABLED, 2=NOT_CONFIGURED), type: integer }, validateTimeBand: { description: (0=DISABLED, 1=ENABLED, 2=NOT_CONFIGURED), type: integer }, validateAuthorizerRole: { description: (0=DISABLED, 1=ENABLED, 2=NOT_CONFIGURED), type: integer }, validateAuthorizerPlace: { description: (0=DISABLED, 1=ENABLED, 2=NOT_CONFIGURED), type: integer }, validateVacancy: { description: (0=DISABLED, 1=ENABLED, 2=NOT_CONFIGURED), type: integer }, validatePhysicallocation: { description: (0=DISABLED, 1=ENABLED, 2=NOT_CONFIGURED), type: integer }, checkCustomValidation: { description: (0=DISABLED, 1=ENABLED, 2=NOT_CONFIGURED), type: integer } } } ] }, PhysicalLocation: { type: object, allOf: [ { $ref: #/definitions/BasicPhysicalLocation }, { type: object, properties: { checkRoleSuspension: { type: boolean }, checkLevel: { type: boolean }, checkAntiPassback: { type: boolean }, checkCapacity: { type: boolean }, checkAccessCredit: { type: boolean }, checkRole: { type: boolean }, checkSlotTimeLocation: { type: boolean }, checkSlotTimeRole: { type: boolean }, checkRoleAuthorizer: { type: boolean }, checkLocationAuthorizer: { type: boolean }, checkCustomValidation: { type: boolean }, externalLocation: { type: boolean }, localTimeZoneId: { type: integer, format: int64 }, blueprint:{ $ref: #/definitions/Blueprint } } } ] }, PhysicalLocationAntiPassbackTime: { type: object, properties: { id: { type: integer, format: int64 }, antiPassbackTime: { type: integer } } }, PhysicalLocationLevel: { type: object, properties: { id: { type: integer, format: int64 }, level: { type: integer } } }, PhysicalLocationMaxCapacity: { type: object, properties: { id: { type: integer, format: int64 }, maxCapacity: { type: integer } } }, PhysicalLocationSlotTimeBasic: { type: object, properties: { id: { type: integer, format: int64 }, slottime: { type: integer, format: int64 } } }, PhysicalLocationSlotTime: { type: object, allOf: [ { $ref: #/definitions/TimeslotList }, { type: object, properties: { id: { type: integer, format: int64 } } } ] }, CustomValidationUrl: { type: object, properties: { id: { type: integer, format: int64 }, url: { type: string, minLength: 10, maxLength: 2000 } } }, PhysicalLocationCapacity: { type: object, properties: { id: { type: integer, format: int64 }, actualCapacity: { type: integer } } }, SimplePhysicalLocation: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string, minLength: 3, maxLength: 50 } } }, BasicPhysicalLocation: { type: object, allOf: [ { $ref: #/definitions/SimplePhysicalLocation }, { properties: { parent: { type: integer, format: int64 }, children: { type: boolean }, status: { type: boolean } } } ] }, ChildPhysicalLocation: { type: object, allOf: [ { $ref: #/definitions/BasicPhysicalLocation }, { properties: { hasValidRange: { type: boolean }, hasBlueprint: { type: boolean } } } ] }, MonitoringPhysicalLocation: { type: object, allOf: [ { $ref: #/definitions/SimplePhysicalLocation }, { properties: { hasValidRange: { type: boolean }, blueprintId: { type: integer, format: int64 } } } ] }, PhysicalLocationWithPath: { type: object, properties: { id: { type: integer, format: int64 }, nameWithPath: { type: string }, name: { type: string } } }, PhysicalLocationWithPathRange: { type: object, allOf: [ { $ref: #/definitions/PhysicalLocationWithPath }, { properties: { hasValidRange: { type: boolean } } } ] }, BasicWorkschedule: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string, minLength: 3, maxLength: 50 } } }, Workschedule: { type: object, allOf: [ { $ref: #/definitions/BasicWorkschedule }, { type: object, properties: { dateInit: { type: string }, periods: { type: array, items: { $ref: #/definitions/Period } } } } ] }, WorkscheduleRole: { type: object, properties: { workscheduleId: { type: integer, format: int64 }, roleId: { type: integer, format: int64 } } }, Period: { type: object, properties: { id: { type: integer, format: int64 }, weekDay: { description: (0=DOMINGO, 1=SEGUNDA, 2=TERCA, 3=QUARTA, 4=QUINTA, 5=SEXTA, 6=SABADO), type: integer }, slotTimes: { type: array, items: { $ref: #/definitions/SlotTime } } } }, SlotTime: { type: object, properties: { id: { type: integer, format: int64 }, startTime: { type: string }, finishTime: { type: string } } }, BasicGroup: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string, maxLength: 50 } } }, ChildGroup: { type: object, allOf: [ { $ref: #/definitions/BasicGroup }, { properties: { hasValidRange: { type: boolean } } } ] }, Group: { type: object, allOf: [ { $ref: #/definitions/BasicGroup }, { properties: { id: { type: integer, format: int64 }, parent: { type: integer, format: int64 }, name: { type: string, maxLength: 50 }, vacancyAmont: { type: integer, format: int64 }, vacancyAmontUse: { type: integer, format: int64 }, controlVacancyAmount: { type: boolean }, physicalLocation: { $ref: #/definitions/SimplePhysicalLocation } } } ] }, GroupSearch: { type: object, allOf: [ { $ref: #/definitions/Group }, { properties: { controlVacancyAmount: { type: boolean } } } ] }, Document: { type: object, properties: { id: { type: integer, format: int64 }, documentType: { $ref: #/definitions/DocumentType }, document: { type: string, maxLength: 30 } } }, MonitoringSearch: { type: object, properties: { startDate: { type: string, maxLength: 30 }, endDate: { type: string, maxLength: 30 }, typeAccess: { description: Acess type (1- allowed , 0- denied), type: integer }, order: { description: Date ordenation (1- ascending , 0- descending), type: integer }, page: { type: integer }, pageSize: { type: integer }, physicalLocation: { type: array, items: { type: integer } }, devices: { type: array, items: { type: integer } }, groups: { type: array, items: { type: integer } }, persons: { type: array, items: { type: integer } }, roles: { type: array, items: { type: integer } } } }, VehicleAccessSearch: { type: object, properties: { startDate: { type: string, maxLength: 30 }, endDate: { type: string, maxLength: 30 }, accessType: { type: string, enum: [ ACCESS_DENIED, ACCESS_VALID ] }, order: { $ref: #/definitions/OrderDirection }, page: { type: integer }, pageSize: { type: integer }, physicalLocation: { type: array, items: { type: integer, format: int64 } }, devices: { type: array, items: { type: integer, format: int64 } }, licensePlates: { type: array, items: { type: string, maxLength: 15 } } } }, MonitorationAlarmSearch: { type: object, properties: { startDate: { type: string, maxLength: 30 }, endDate: { type: string, maxLength: 30 }, typeAlarm: { description: Alarm type (2-Monitoring ,1- Active , 0- Inactive), type: integer }, order: { description: Date ordenation (1- ascending , 0- descending), type: integer }, page: { type: integer }, pageSize: { type: integer }, physicalLocation: { type: array, items: { type: integer } }, devices: { type: array, items: { type: integer } } } }, Email: { type: object, properties: { id: { type: integer, format: int64 }, preferential: { type: boolean }, emailAddress: { type: string, maxLength: 100 } } }, ReactionEmail: { type: object, properties: { id: { type: integer, format: int64 }, emailAddress: { type: string, maxLength: 100 } } }, Phone: { type: object, properties: { id: { type: integer, format: int64 }, preferential: { type: boolean }, ddi: { type: integer }, phoneNumber: { type: string, maxLength: 25 }, extensionLine: { type: string, maxLength: 5 } } }, BasicPerson: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string, minLength: 2, maxLength: 100 } } }, SearchPerson: { type: object, allOf: [ { $ref: #/definitions/BasicPerson }, { type: object, properties: { mandatoryDocuments: { type: array, items: { $ref: #/definitions/Document } }, preferentialPhone: { $ref: #/definitions/Phone }, preferentialEmail: { $ref: #/definitions/Email } } } ] }, SearchVisitor: { type: object, allOf: [ { $ref: #/definitions/BasicPerson }, { type: object, properties: { mandatoryDocuments: { type: array, items: { $ref: #/definitions/Document } }, preferentialPhone: { $ref: #/definitions/Phone }, preferentialEmail: { $ref: #/definitions/Email }, blockReason: { type: string }, blockDate: { type: string }, unlockProcedure: { type: string } } } ] }, SimplePersonWithEmail: { type: object, allOf: [ { $ref: #/definitions/BasicPerson }, { type: object, properties: { mandatoryDocuments: { type: array, items: { $ref: #/definitions/Document } }, preferentialEmail: { $ref: #/definitions/Email } } } ] }, SimplePerson: { type: object, allOf: [ { $ref: #/definitions/BasicPerson }, { type: object, properties: { mandatoryDocuments: { type: array, items: { $ref: #/definitions/Document } }, preferentialEmail: { type: object, $ref: #/definitions/Email }, preferentialPhone: { type: object, $ref: #/definitions/Phone }, lastFeedbackPollDate: { type: string }, useSelfServiceTerminal: { type: boolean } } } ] }, PersonRoleId: { type: object, properties: { personRoleId: { type: integer, format: int64 } } }, RoleSearchPerson: { type: object, allOf: [ { $ref: #/definitions/SearchPerson }, { type: object, properties: { personRoleId: { type: integer, format: int64 }, startDate: { type: string }, endDate: { type: string } } } ] }, PersonSituation: { type: object, properties: { id: { type: integer, format: int64 }, situation: { description: (0=ACTIVE, 1=BLOCKED), type: integer }, blockDate: { type: string }, blockReason: { type: string, maxLength: 500 }, unblockDate: { type: string }, unblockProcedure: { type: string, maxLength: 500 }, unblockJutification: { type: string, maxLength: 500 } } }, PersonBlock: { type: object, properties: { personId: { type: integer, format: int64 }, blockReason: { type: string, maxLength: 500 }, unblockProcedure: { type: string, maxLength: 500 } } }, PersonUnblock: { type: object, properties: { personId: { type: integer, format: int64 }, unblockJutification: { type: string, maxLength: 500 } } }, Person: { type: object, allOf: [ { $ref: #/definitions/BasicPerson }, { type: object, properties: { documents: { type: array, items: { $ref: #/definitions/Document } }, emails: { type: array, items: { $ref: #/definitions/Email } }, phones: { type: array, items: { $ref: #/definitions/Phone } }, gender: { description: (0=DESCONHECIDO, 1=MASCULINO, 2=FEMININO), type: integer }, birthday: { type: string }, registry: { type: string, maxLength: 20 }, registerDate: { type: string }, lastModificationDate: { type: string }, address: { type: string, maxLength: 200 }, district: { type: string, maxLength: 30 }, city: { type: string, maxLength: 30 }, uf: { type: string, maxLength: 30 }, cep: { type: string, maxLength: 20 }, nationality: { type: string, maxLength: 50 }, lastAccessDate: { type: string }, situation: { description: (0=ACTIVE, 1=BLOCKED), type: integer }, hasValidRole: { type: boolean }, hasProvisoryRole: { type: boolean }, currentPhysicalLocation: { $ref: #/definitions/SimplePhysicalLocation }, lastFeedbackPollDate: { type: string } } } ] }, Permission: { type: object, properties: { id: { type: integer, format: int64 }, operation: { type: array, items: { type: integer } } } }, IndividualPermission: { type: object, properties: { routine: { description: Group of routine permission, type: integer, format: int64 }, operation: { description: The operation permission, type: integer }, status: { description: 0=Off, 1=On, type: integer } } }, RoutinePermission: { type: object, properties: { routine: { description: Group of routine permission, type: integer, format: int64 }, status: { description: 0=Off, 1=On, type: integer } } }, ActivePermissionsAndLocks: { type: object, properties: { active: { type: array, items: { $ref: #/definitions/Permission } }, blocked: { type: array, items: { $ref: #/definitions/Permission } } } }, RejectedEvent: { type: object, properties: { datetime: { type: string }, eventType: { type: integer }, rejectReason: { type: string }, device: { $ref: #/definitions/SimpleDevice }, credential: { type: integer, format: int64 }, cardNumber: { type: integer, format: int64 }, personId: { type: integer, format: int64 }, biometricManufacturer: { description: (0=NONE, 1=FINGERPRINT_SAGEM, 2=FINGERPRINT_SUPREMA, 3=FINGERPRINT_VIRDI, 4=FINGERPRINT_NITGEN, 5=FINGERPRINT_CAMA, 6=FINGERPRINT_INNOVATRICS, 7=HANDKEY_IR), type: integer }, credentialFormat: { $ref: #/definitions/CredentialFormat } } }, RejectedVehicleEvent: { type: object, properties: { datetime: { type: string, format: date-time }, timezoneOffset: { description: Offset in minutes, type: integer }, eventType: { type: integer }, accessDirection: { $ref: #/definitions/AccessDirection }, notificationStatus: { $ref: #/definitions/CommunicationStatus }, rejectReason: { type: string }, device: { $ref: #/definitions/SimpleDevice }, vehicleCredentialFormat: { $ref: #/definitions/CredentialFormat }, vehicleCardNumber: { type: integer, format: int64 }, licensePlate: { type: string }, personCredentialFormat: { $ref: #/definitions/CredentialFormat }, personCardNumber: { type: integer, format: int64 }, personId: { type: integer, format: int64 } } }, PersonRoleSearch: { type: object, properties: { roleId: { type: integer, format: int64 }, roleName: { type: string, maxLength: 50 }, personRoleId: { type: integer, format: int64 }, startDate: { type: string }, endDate: { type: string }, isSuspended: { type: boolean } } }, PersonRole: { type: object, properties: { id: { type: integer, format: int64 }, personId: { type: integer, format: int64 }, roleId: { type: integer, format: int64 }, startDate: { type: string }, endDate: { type: string } } }, PersonPhoto: { type: object, properties: { photoDate: { type: string }, photoURL: { type: string } } }, Server: { type: object, properties: { datetime: { type: string } } }, PersonRoleSuspensionSearch: { type: object, properties: { roleId: { type: integer, format: int64 }, roleName: { type: string }, personRoleSuspensionId: { type: integer, format: int64 }, startDate: { type: string }, endDate: { type: string }, justification: { type: string, maxLength: 500 } } }, PersonRoleSuspension: { type: object, properties: { id: { type: integer, format: int64 }, personRoleId: { type: integer, format: int64 }, startDate: { type: string }, endDate: { type: string }, justification: { type: string, maxLength: 500 } } }, PersonRoleSuspendAll: { type: object, properties: { personId: { type: integer, format: int64 }, startDate: { type: string }, endDate: { type: string }, justification: { type: string, maxLength: 500 } } }, SuspensionIdList: { type: object, properties: { suspensionIdList: { type: array, items: { type: integer, format: int64 } } } }, ExtensibleProperty: { type: object, properties: { id: { type: integer, format: int64 }, key: { type: string }, value: { type: string } } }, ExtensibleConfiguration: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string }, extensiblePropertyList: { type: array, items: { $ref: #/definitions/ExtensibleProperty } } } }, LocalTimeZone: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string }, timeZone: { $ref: #/definitions/TimeZones }, useDaylightSaving: { type: boolean }, offsetDaylightSaving: { type: integer }, daylightSavingStartDate: { type: string }, daylightSavingFinishDate: { type: string } } }, TimeZones: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string }, offset: { description: In minutes, type: integer } } }, BasicHolidayList: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string, minLength: 3, maxLength: 50 } } }, HolidayList: { type: object, allOf: [ { $ref: #/definitions/BasicHolidayList }, { properties: { id: { type: integer, format: int64 }, name: { type: string, minLength: 3, maxLength: 50 }, holiday: { type: array, items: { $ref: #/definitions/Holiday } } } } ] }, BasicUser: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string, minLength: 2, maxLength: 100 }, email: { type: string } } }, User: { type: object, properties: { id: { type: integer, format: int64 }, personId: { type: integer, format: int64 }, email: { type: string }, localTimeZoneId: { type: integer, format: int64 }, localeId: { type: integer, format: int64 }, userType: { type: integer, description: 0=Normal user, 1=Administrator }, ddi: { type: integer }, lobbyRoleId: { type: integer, format: int64 }, cardTechnology: { type: integer, description: 0=None, 1=Barcode, 2=RFID, 3=Smartcard }, biometryFactory: { type: integer, description: (0=NONE, 1=FINGERPRINT_SAGEM, 2=FINGERPRINT_SUPREMA, 3=FINGERPRINT_VIRDI, 4=FINGERPRINT_NITGEN, 5=FINGERPRINT_CAMA, 6=FINGERPRINT_INNOVATRICS, 7=HANDKEY_IR) }, login: { type: string } } }, Timeslot: { type: object, properties: { id: { type: integer, format: int64 }, startTime: { type: string, format: time }, finishTime: { type: string, format: time }, monday: { type: boolean }, tuesday: { type: boolean }, wednesday: { type: boolean }, thursday: { type: boolean }, friday: { type: boolean }, saturday: { type: boolean }, sunday: { type: boolean }, holiday: { type: boolean } } }, TimeslotList: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string }, holidayList: { $ref: #/definitions/BasicHolidayList }, timeslot: { type: array, items: { $ref: #/definitions/Timeslot } } } }, Driver: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string }, key: { type: string }, driverType: { description: 0=Apollo, 1=SDK, 2=Head, type: integer }, packetSize: { type: integer }, requestIntervalTime: { type: integer }, waitInterval: { type: integer }, sendCardholders: { type: boolean }, extensibleConfiguration: { $ref: #/definitions/SimpleExtensibleConfiguration } } }, BasicCardFormat: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string } } }, CardFormat: { allOf: [ { $ref: #/definitions/BasicCardFormat }, { type: object, properties: { quantityCardBits: { type: integer }, bitsDisplacement: { type: integer }, quantityBitsEventParity: { type: integer }, quantityBitsOddParity: { type: integer }, accessCode: { type: integer, format: int64 }, quantityBitsAccessCode: { type: integer }, accessCodeBeginningBit: { type: integer }, quantityCardNumberBits: { type: integer }, cardNumberBeginningBit: { type: integer }, defaultAllReaders: { type: boolean } } } ] }, CardFormatTemplate: { type: object, properties: { name: { type: string }, quantityCardBits: { type: integer }, bitsDisplacement: { type: integer }, quantityBitsEventParity: { type: integer }, quantityBitsOddParity: { type: integer }, quantityBitsAccessCode: { type: integer }, accessCodeBeginningBit: { type: integer }, quantityCardNumberBits: { type: integer }, cardNumberBeginningBit: { type: integer } } }, Holiday: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string, minLength: 3, maxLength: 50 }, date: { type: string }, recurrent: { description: (0=NO, 1=YES), type: integer } } }, UserPreferences: { type: object, properties: { localTimeZoneId: { type: integer, format: int64 }, localeId: { type: integer, format: int64 } } }, UserAllPreferences: { type: object, properties: { localTimeZone: { $ref: #/definitions/LocalTimeZone }, locale: { $ref: #/definitions/Locale }, userType: { type: integer, description: 0=Normal user, 1=Administrator }, ddi: { type: integer }, lobbyRole: { $ref: #/definitions/BasicRole }, cardTechnology: { type: integer, description: 0=None, 1=Barcode, 2=RFID, 3=Smartcard }, biometryFactory: { type: integer, description: (0=NONE, 1=FINGERPRINT_SAGEM, 2=FINGERPRINT_SUPREMA, 3=FINGERPRINT_VIRDI, 4=FINGERPRINT_NITGEN, 5=FINGERPRINT_CAMA, 6=FINGERPRINT_INNOVATRICS, 7=HANDKEY_IR) }, applyingRangePhysicalLocation: { type: integer, description: 0=No, 1=Yes }, applyingRangeRole: { type: integer, description: 0=No, 1=Yes }, applyingRangeGroup: { type: integer, description: 0=No, 1=Yes }, personId: { type: integer, format: int64 } } }, GroupWithPath: { type: object, properties: { id: { type: integer, format: int64 }, nameWithPath: { type: string }, isValidRange: { type: boolean } } }, DeviceWithPath: { type: object, properties: { id: { type: integer, format: int64 }, nameWithPath: { type: string }, isValidRange: { type: boolean }, deviceType: { type: integer, description: 0=Manager, 1=Reader, 2=Module, 3=Input, 4=Output }, status: { type: integer }, parent: { type: integer, format: int64 } } }, AccessMonitored: { type: object, properties: { date: { type: string }, credential: { type: integer, format: int64 }, person: { $ref: #/definitions/SimplePerson }, accessType: { type: string, description: access validation }, physicalLocationDestiny: { $ref: #/definitions/SimplePhysicalLocation }, device: { $ref: #/definitions/SimpleDevice }, devicePhysicalLocation: { $ref: #/definitions/SimplePhysicalLocation }, biometricManufacturer: { description: (0=NONE, 1=FINGERPRINT_SAGEM, 2=FINGERPRINT_SUPREMA, 3=FINGERPRINT_VIRDI, 4=FINGERPRINT_NITGEN, 5=FINGERPRINT_CAMA, 6=FINGERPRINT_INNOVATRICS, 7=HANDKEY_IR), type: integer }, credentialFormat: { $ref: #/definitions/CredentialFormat } } }, AccessMonitoredVehicle: { type: object, properties: { date: { type: string }, accessType: { type: string, description: access validation }, personCredentialFormat: { $ref: #/definitions/CredentialFormat }, personCardNumber: { type: integer, format: int64 }, person: { $ref: #/definitions/SimplePerson }, personBiometricManufacturer: { $ref: #/definitions/BiometricManufacturer }, vehicleCredential: { type: string }, vehicleLicensePlate: { type: string }, physicalLocationDestiny: { $ref: #/definitions/SimplePhysicalLocation }, device: { $ref: #/definitions/SimpleDevice } } }, BiometricManufacturer: { type: string, enum: [ NONE, FINGERPRINT_SAGEM, FINGERPRINT_SUPREMA, FINGERPRINT_VIRDI, FINGERPRINT_NITGEN, FINGERPRINT_CAMA, FINGERPRINT_INNOVATRICS, HANDKEY_IR ] }, AccessDirection: { type: string, enum: [ ENTRANCE, EXIT, UNKNOWN ] }, RealtimeAccessNotification: { type: object, properties: { date: { type: string }, person: { $ref: #/definitions/BasicPerson }, personPhotoURL: { type: string }, personPhotoDate: { type: string }, accessTypeGroup: { $ref: #/definitions/AccessTypeGroup }, accessType: { type: string, description: access validation }, accessDirection: { $ref: #/definitions/AccessDirection }, device: { $ref: #/definitions/SimpleDevice }, physicalLocation: { $ref: #/definitions/SimplePhysicalLocation } } }, AlarmMonitored: { type: object, properties: { date: { type: string }, alarmType: { type: integer, description: alarm type }, status: { type: integer }, device: { $ref: #/definitions/SimpleDevice }, physicalLocation: { $ref: #/definitions/SimplePhysicalLocation }, description: { type: string } } }, DeviceChildren: { type: object, properties: { id: { type: integer, format: int64 }, nameWithPath: { type: string }, DriverFactory: { description: 0=Apollo, 1=SDK, type: integer }, deviceType: { type: integer, description: 0=Manager, 1=Reader, 2=Module, 3=Input, 4=Output }, isValidRange: { type: boolean }, status: { type: integer }, isIntegrated: { type: boolean } } }, SimpleDevice: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string, minLength: 3, maxLength: 50 }, deviceType: { type: integer, description: 0=Manager, 1=Reader, 2=Module, 3=Input, 4=Output } } }, BasicDevice: { type: object, allOf: [ { $ref: #/definitions/SimpleDevice }, { properties: { parent: { type: integer, format: int64 }, status: { type: integer }, isIntegrated: { type: boolean }, editable: { type: integer }, physicalLocation: { $ref: #/definitions/SimplePhysicalLocation }, extensibleConfiguration: { $ref: #/definitions/SimpleExtensibleConfiguration } } } ] }, AccessMessage: { type: object, properties: { id: { type: integer, format: int64 }, message: { type: string }, idEvent: { type: integer }, DisplayDateTime: { description: (0=NO, 1=YES), type: integer }, DisplayBadgeNumber: { description: (0=NO, 1=YES), type: integer } } }, EventMonitoring: { type: object, properties: { event: { type: integer, format: int64 }, incident: { type: integer, format: int64 }, emails: { type: array, items: { $ref: #/definitions/ReactionEmail } } } }, Masking: { type: object, properties: { id: { type: integer, format: int64 }, startTime: { type: string, format: time }, finishTime: { type: string, format: time }, normalDays: { type: boolean }, saturday: { type: boolean }, sunday: { type: boolean }, holiday: { type: boolean } } }, PropertyREP: { type: object, properties: { id: { type: integer, format: int64 }, companyName: { type: string, maxLength: 100 }, cnpj: { type: string, maxLength: 14 }, cpf: { type: string, maxLength: 11 }, cei: { type: string, maxLength: 12 }, address: { type: string, maxLength: 100 } } }, ReaderOutputAccess: { type: object, properties: { outputId: { type: integer, format: int64 }, name: { type: string, maxLength: 50 }, accessType: { type: integer, description: 0=Access Granted, 1=Access Denied }, activationTime: { type: integer } } }, InputOutputActivation: { type: object, properties: { outputId: { type: integer, format: int64 }, name: { type: string, maxLength: 50 }, activationTime: { type: integer } } }, PortControlled: { type: object, properties: { id: { type: integer, format: int64 }, port: { type: integer, description: 2, 3, 4 ,5 }, communicationMode: { type: integer, description: 0=full duplex, 1=half duplex }, delayDriverTXD: { type: integer }, delayDriverRXD: { type: integer }, timeoutReceipt: { type: integer }, timeoutResponse: { type: integer }, timeoutEvents: { type: integer }, timeoutEventsOffLine: { type: integer } } }, DeviceManager: { type: object, allOf: [ { $ref: #/definitions/BasicDevice }, { properties: { managerType: { type: integer, description: 0=AccessControl, 1=REP, 2=Collector }, networkIdentification: { type: string, maxLength: 30 }, port: { type: integer, format: int64 }, displayMessage: { type: string, maxLength: 40 }, taxNumber: { type: string, minLength: 17, maxLength: 17 }, quantityBadgesControlled: { type: integer, format: int64 }, controlledType: { type: integer }, turnstileBypassTime: { type: integer }, statusDateTime: { type: integer }, driver: { $ref: #/definitions/Driver }, propertyREP: { $ref: #/definitions/PropertyREP }, portControlled: { type: array, items: { $ref: #/definitions/PortControlled } }, accessMessage: { type: array, items: { $ref: #/definitions/AccessMessage } }, eventMonitoring: { type: array, items: { $ref: #/definitions/EventMonitoring } } } } ] }, DeviceModule: { type: object, allOf: [ { $ref: #/definitions/BasicDevice }, { properties: { address: { type: integer }, portControlled: { type: integer, format: int64 }, controlledType: { type: integer } } } ] }, DeviceOutput: { type: object, allOf: [ { $ref: #/definitions/BasicDevice }, { properties: { address: { type: integer }, defaultState: { type: integer, description: 0=Disabled, 1=Enabled } } } ] }, InputState: { type: string, enum: [ INACTIVE, ACTIVE ] }, DeviceInput: { type: object, allOf: [ { $ref: #/definitions/BasicDevice }, { properties: { address: { type: integer }, generateIncident: { description: (0=NO, 1=YES), type: integer }, incidentTypeId: { type: integer, format: int64 }, defaultState: { type: integer, description: 0=Disabled, 1=Enabled }, activationDelay: { type: integer }, masking: { type: array, items: { $ref: #/definitions/Masking } }, activations: { type: array, items: { $ref: #/definitions/InputOutputActivation } }, inputState: { $ref: #/definitions/InputState }, incidentPriority: { $ref: #/definitions/IncidentPriority } } } ] }, DeviceReader: { type: object, allOf: [ { $ref: #/definitions/BasicDevice }, { properties: { technology: { type: integer, description: 0=Barcode, 1=Proximity, 2=Smartcard, 3=Biometrics, 4=QRCODE, 5=BLUETOOTH }, address: { type: integer }, checkOneToMany: { type: boolean }, relatedReader: { $ref: #/definitions/SimpleDevice }, biometryFactory: { type: integer, description: (0=NONE, 1=FINGERPRINT_SAGEM, 2=FINGERPRINT_SUPREMA, 3=FINGERPRINT_VIRDI, 4=FINGERPRINT_NITGEN, 5=FINGERPRINT_CAMA, 6=FINGERPRINT_INNOVATRICS, 7=HANDKEY_IR) }, biometryLevel: { type: integer }, accessDirection: { type: integer, description: 0=Output, 1=Input, 2=Both }, urnSensorTime: { type: integer }, vacancyControl: { description: (0=NO, 1=YES), type: integer }, timeAccess: { type: integer }, timeOpenDoorAlarm: { type: integer }, parityWorks: { description: (0=NO, 1=YES), type: integer }, validationTypeOnline: { description: 0=Block Access, 1=Card, 2=Card OR Pin, 3=Card AND Pin, 4=Allow Access, 5=Facility Code, type: integer }, validationTypeOffline: { description: 0=Block Access, 1=Card, 2=Card OR Pin, 3=Card AND Pin, 4=Allow Access, 5=Facility Code, type: integer }, physicalLocationOrigin: { $ref: #/definitions/SimplePhysicalLocation }, physicalLocationDestiny: { $ref: #/definitions/SimplePhysicalLocation }, urnSensor: { $ref: #/definitions/SimpleDevice }, activations: { type: array, items: { $ref: #/definitions/ReaderOutputAccess } }, cardFormatList: { type: array, items: { $ref: #/definitions/BasicCardFormat } }, checkOneToOneBiometry: { description: true: always require biometry, false: only when person has biometry enroll, type: boolean }, validateVehicle: { description: true: always require vehicle, false: valid only person, type: boolean }, key: { description: Key to access the device, type: string, maxLength: 100 }, releaseProvisoryOnExit: { type: boolean }, blockProvisoryOnExit: { type: boolean } } } ] }, BasicBiometry: { type: object, properties: { id: { type: integer, format: int64 }, person: { $ref: #/definitions/BasicPerson } } }, Biometry: { type: object, allOf: [ { $ref: #/definitions/BasicBiometry }, { properties: { manufacturer: { description: (0=NONE, 1=FINGERPRINT_SAGEM, 2=FINGERPRINT_SUPREMA, 3=FINGERPRINT_VIRDI, 4=FINGERPRINT_NITGEN, 5=FINGERPRINT_CAMA, 6=FINGERPRINT_INNOVATRICS, 7=HANDKEY_IR), type: integer }, template: { type: string } } } ] }, BasicCredential: { type: object, properties: { id: { type: integer, format: int64 }, expirationDate: { type: string }, startDate: { type: string } } }, Credential: { type: object, allOf: [ { $ref: #/definitions/BasicCredential }, { properties: { person: { $ref: #/definitions/BasicPerson }, situation: { description: (0=RELEASED, 1=BLOCKED), type: integer } } } ] }, BiometricCredential: { type: object, allOf: [ { $ref: #/definitions/Credential }, { properties: { biometricManufacturer: { description: (0=NONE, 1=FINGERPRINT_SAGEM, 2=FINGERPRINT_SUPREMA, 3=FINGERPRINT_VIRDI, 4=FINGERPRINT_NITGEN, 5=FINGERPRINT_CAMA, 6=FINGERPRINT_INNOVATRICS, 7=HANDKEY_IR), type: integer }, biometricId: { type: integer, format: int64 } } } ] }, CardCredential: { type: object, allOf: [ { $ref: #/definitions/Credential }, { properties: { cardCredentialList: { type: array, items: { $ref: #/definitions/InformationCardCredential } } } } ] }, VehicleCardCredential: { type: object, properties: { vehicleId: { type: integer, format: int64 }, credentialId: { type: integer, format: int64 }, expirationDate: { type: string }, cardTechnology: { type: string, enum: [ BARCODE, PROXIMITY, SMARTCARD ] }, cardNumber: { type: integer, format: int64 } } }, VehicleCredentialUpdate: { type: object, properties: { vehicleId: { type: integer, format: int64 }, credentialId: { type: integer, format: int64 }, expirationDate: { type: string } } }, ProvisoryCredential: { type: object, properties: { role: { $ref: #/definitions/BasicRole }, group: { $ref: #/definitions/BasicGroup }, personVisited: { $ref: #/definitions/BasicPerson }, scheduledCredentialID: { type: integer, format: int64 } } }, ProvisoryBiometricCredential: { type: object, allOf: [ { $ref: #/definitions/BiometricCredential }, { $ref: #/definitions/ProvisoryCredential } ] }, ProvisoryCardCredential: { type: object, allOf: [ { $ref: #/definitions/CardCredential }, { $ref: #/definitions/ProvisoryCredential }, { properties: { virtualLobby: { $ref: #/definitions/VirtualLobby }, reason: { $ref: #/definitions/ProvisoryCredentialReason }, accessCallId: { description: Optional param with access call ID to finish the call, type: integer, format: int64 } } } ] }, ProvisoryCredentials: { type: object, properties: { cards: { type: array, items: { $ref: #/definitions/ProvisoryCardCredential } }, biometries: { type: array, items: { $ref: #/definitions/ProvisoryBiometricCredential } } } }, QRCodeCredential: { type: object, properties: { qrcode: { type: string } } }, PendencyType: { type: string, enum: [ DEVICE_STATUS, DEVICE_DATE_TIME, BLOCK_DEVICE, UNBLOCK_DEVICE, SET_DEVICE_EMERGENCY, UNSET_DEVICE_EMERGENCY, RESET_DEVICE, DEVICE, LOAD_HOLIDAY_LIST, REMOVE_HOLIDAY_LIST, ACTIVATE_DEVICE_OUTPUT, DEACTIVATE_DEVICE_OUTPUT, DEVICE_INPUT_STATUS, COLLECT_EVENTS, ALLOW_CARD_LIST, BIOMETRY_LIST, REMOVE_ALLOW_CARD_LIST, REMOVE_BIOMETRY_LIST, UPDATE_FIRMWARE ] }, CollectEventCommand: { type: object, properties: { deviceId: { type: integer, format: int64 }, initialDate: { type: string }, finalDate: { type: string }, initialNSR: { type: integer, format: int64 }, finalNSR: { type: integer, format: int64 } } }, DeviceCommand: { type: object, properties: { id: { type: integer, format: int64 }, deviceId: { type: integer, format: int64 }, operation: { $ref: #/definitions/PendencyType } } }, DeviceCommandCancel: { type: object, properties: { id: { type: integer, format: int64 } } }, PendencyStatus: { type: string, enum: [ UNKNOWN_COMMAND, PENDING, EXECUTED, EXECUTED_WITH_ERROR, PENDING_WITH_ERROR, CANCELED, TIMEOUT, DUPLICATE ] }, DeviceCommandStatus: { type: object, properties: { id: { type: integer, format: int64 }, status: { $ref: #/definitions/PendencyStatus } } }, DeviceStatusProperty: { type: object, properties: { key: { type: string }, value: { type: string } } }, DisplayMessageMode: { type: string, enum: [ ENQUEUE, OVERRIDE ] }, DeviceDisplayMessage: { type: object, properties: { message: { type: string, maxLength: 128 }, duration: { description: Message exibition time duration (milliseconds precision)., type: integer, format: int64 }, mode: { $ref: #/definitions/DisplayMessageMode } } }, InputStatus:{ type:object, properties:{ inputDeviceId:{ type:integer, format:int64 }, status:{ $ref: #/definitions/InputState } } }, InputStatusDetail:{ type:object, properties:{ inputDeviceName:{ type: string }, status:{ $ref: #/definitions/InputState } } }, BasicIncidentType: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string, minLength: 3, maxLength: 50 } } }, IncidentType: { type: object, allOf: [ { $ref: #/definitions/BasicIncidentType }, { properties: { description: { type: string, maxLength: 200 }, isWatched: { type: boolean }, defaultPriority: { $ref: #/definitions/IncidentPriority }, emails: { type: array, items: { $ref: #/definitions/ReactionEmail } }, actions: { type: array, items: { $ref: #/definitions/IncidentTypeAction } }, managerDevices: { type: array, items: { $ref: #/definitions/SimpleDevice } } } } ] }, IncidentTypeAction: { type: object, properties: { id: { type: integer, format: int64 }, output: { $ref: #/definitions/SimpleOutputDevice }, actionType: { type: string, enum: [ DISABLE_ACTION, ENABLE_ACTION, ENABLE_ACTION_WITH_TIMEOUT ] }, actionTime: { type: integer } } }, InformationCardCredential: { type: object, properties: { cardTechnology: { description: (0=BARCODE, 1=PROXIMITY, 2=SMARTCARD), type: integer }, cardNumber: { type: integer, format: int64 } } }, BasicInformationCardCredential: { type: object, properties: { idCredential: { type: integer, format: int64 }, cardCredential: { $ref: #/definitions/InformationCardCredential }, expirationDate: { type: string } } }, RoleDuplicate: { type: object, properties: { roleBasedId: { description: Id of role to duplicate, type: integer, format: int64 }, nameNewRole: { type: string } } }, BasicCardCredential: { type: object, properties: { idCredential: { type: integer, format: int64 }, person: { $ref: #/definitions/BasicPerson }, cardCredential: { $ref: #/definitions/InformationCardCredential }, expirationDate: { type: string } } }, BasicIncident: { type: object, properties: { id: { type: integer, format: int64 }, physicalLocation: { $ref: #/definitions/SimplePhysicalLocation }, incidentType: { $ref: #/definitions/BasicIncidentType }, date: { type: string }, creationDate: { type: string }, status: { $ref: #/definitions/IncidentStatus }, priority: { $ref: #/definitions/IncidentPriority } } }, IncidentAttachment: { type: object, properties: { id: { type: integer, format: int64 }, incidentId: { type: integer, format: int64 }, fileName: { type: string, maxLength: 50 }, fileURL: { type: string } } }, IncidentStatus: { type: string, enum: [ PENDING, IN_PROGRESS, STOPPED, DONE ] }, IncidentProcedureType: { type: string, enum: [ TEXT, ADD_ATTACHMENT, REMOVE_ATTACHMENT, UPDATE_PRIORITY, UPDATE_STATUS ] }, IncidentPriority: { type: string, enum: [ PLANNED, LOW, MEDIUM, HIGH, CRITICAL ] }, IncidentPriorityUpdated: { type: object, properties: { incidentPriority: { $ref: #/definitions/IncidentPriority } } }, PhysicalLocationAndDeviceIncidentStatus: { type: object, properties: { physicalLocation: { type: array, items: { type: integer, format: int64 } }, device: { type: array, items: { type: integer, format: int64 } } } }, Incident: { type: object, allOf: [ { $ref: #/definitions/BasicIncident }, { properties: { description: { type: string, maxLength: 200 }, device: { $ref: #/definitions/SimpleDevice }, people: { type: array, items: { $ref: #/definitions/SimplePerson } }, user: { $ref: #/definitions/BasicPerson }, procedures: { type: array, items: { type: string, maxLength: 5000 } } } } ] }, SimpleExtensibleConfiguration: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string } } }, IncidentProcedure: { type: object, properties: { description: { type: string, maxLength: 5000 }, status: { $ref: #/definitions/IncidentStatus } } }, IncidentsCollectiveProcedure: { type: object, properties: { incidentIdList: { type: array, items: { type: integer, format: int64 } }, description: { type: string, maxLength: 5000 }, status: { $ref: #/definitions/IncidentStatus } } }, IncidentProcedureSearch: { type: object, properties: { id: { type: integer, format: int64 }, description: { type: string, maxLength: 5000 }, date: { type: string }, user: { $ref: #/definitions/BasicPerson }, person: { $ref: #/definitions/BasicPerson }, personPhotoUrl: { type: string }, incidentProcedureType: { $ref: #/definitions/IncidentProcedureType }, previousStatus: { $ref: #/definitions/IncidentStatus }, newStatus: { $ref: #/definitions/IncidentStatus }, previousPriority: { $ref: #/definitions/IncidentPriority }, newPriority: { $ref: #/definitions/IncidentPriority }, incidentAttachment: { $ref: #/definitions/IncidentAttachment } } }, ManagerDeviceStatus: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string, maxLength: 50 }, physicalLocation: { $ref: #/definitions/SimplePhysicalLocation }, isAlarmed: { type: boolean }, status: { description: 0=Off, 1=On, type: integer }, hasValidRange: { type: boolean } } }, DeviceStatusType: { type: string, enum: [ NORMAL, ALARMED, OFFLINE ] }, PaperStatus: { type: string, enum: [ HAS_PAPER, LACK_OF_PAPER ] }, MemoryStatus: { type: string, enum: [ AVALIABLE_MEMORY, LOW_MEMORY, NO_MEMORY ] }, PowerStatus: { type: string, enum: [ POWER, BATTERY ] }, SituationStatus: { type: string, enum: [ UNLOCKED, LOCKED ] }, DeviceCommunicationStatus: { type: object, properties:{ deviceId: { type: integer, format: int64 }, status: { $ref: #/definitions/CommunicationStatus } } }, CommunicationStatus: { type: string, enum: [ OFFLINE, ONLINE ] }, DeviceDetailedStatus: { type: object, properties: { device: { $ref: #/definitions/SimpleDevice }, parentId: { type: integer, format: int64 }, physicalLocation: { $ref: #/definitions/SimplePhysicalLocation }, status: { $ref: #/definitions/DeviceStatusType }, hasValidRange: { type: boolean }, networkIdentification: { description: For managing devices only, type: string, maxLength: 30 }, paperStatus: { description: For managing devices only, $ref: #/definitions/PaperStatus }, memoryStatus: { description: For managing devices only, $ref: #/definitions/MemoryStatus }, powerStatus: { description: For managing devices only, $ref: #/definitions/PowerStatus }, situationStatus: { description: For managing devices only, $ref: #/definitions/SituationStatus } } }, DeviceStatus: { type: object, properties: { id: { type: integer, format: int64 }, deviceType: { $ref: #/definitions/DeviceType }, name: { type: string, maxLength: 50 }, showStatus: { type: boolean }, communicationStatus: { $ref: #/definitions/CommunicationStatus }, paperStatus: { $ref: #/definitions/PaperStatus }, memoryStatus: { $ref: #/definitions/MemoryStatus }, powerStatus: { $ref: #/definitions/PowerStatus }, situationStatus: { $ref: #/definitions/SituationStatus }, inputStatus: { $ref: #/definitions/InputState }, parentId: { type: integer, format: int64 } } }, DVRServerType: { type: string, enum: [ DIGIFORT, CAMERITE, MILESTONE, AXXON ] }, BasicDVRServer: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string, maxLength: 50 } } }, DVRServer: { type: object, allOf: [ { $ref: #/definitions/BasicDVRServer }, { properties: { networkIdentification: { type: string, maxLength: 30 }, port: { type: integer, format: int64 }, user: { type: string, maxLength: 30 }, pass: { type: string, maxLength: 30 }, domain: { type: string, maxLength: 50 }, dvrServerType: { $ref: #/definitions/DVRServerType }, serverId: { type: string }, urlPrefix: { type: string } } } ] }, MonitoredNotification: { type: object, properties: { id: { type: integer, format: int64 }, notificationDate: { type: string }, online: { type: boolean }, deviceId: { type: integer, format: int64 }, deviceName: { type: string, maxLength: 50 }, parentName: { type: string, maxLength: 50 }, notificationType: { $ref: #/definitions/NotificationType }, eventType: { $ref: #/definitions/EventType }, resourceType: { $ref: #/definitions/ResourceType }, resourcePercent: { type: integer }, inputState: { $ref: #/definitions/InputState } } }, NotificationType: { type: string, enum: [ ACCESS, EVENT, ALARM, RESOURCE, CLOCKIN ] }, EventType: { type: string, enum: [ DEVICE_STARTED, DEVICE_ONLINE, DEVICE_OFFLINE, ISSUANCE_OF_TIME_AND_ATTENDANCE_REPORT, STARTED_USING_USB_FISCAL_PORT, PAPER_REEL_REPLACED, LACK_OF_PAPER, LOW_MEMORY, NO_MEMORY, BATTERY_REPLACED, STARTED_USING_BATTERY, STARTED_USING_ENERGY, DEVICE_LOCKED, DEVICE_UNLOCKED, TAMPER, DOOR_HELD_OPEN, DOOR_FORCED_OPEN ] }, Resource:{ type:object, allOf:[ { $ref:#/definitions/Notification }, { properties:{ resourceType:{ $ref: #/definitions/ResourceType }, resourcePercent:{ type:integer } } } ] }, ResourceType: { type: string, enum: [ MEMORY, BATTERY, PAPER ] }, personInLocation: { type: object, properties: { person: { $ref: #/definitions/SimplePerson }, photo: { type: string }, acessDate: { type: string, maxLength: 50 }, physicalLocation: { $ref: #/definitions/SimplePhysicalLocation } } }, CctvProxy: { type: object, allOf: [ { $ref: #/definitions/BasicCctvProxy }, { properties: { cameras :{ type: array, items: { $ref: #/definitions/Camera } } } } ] }, BasicCctvProxy: { type: object, properties: { cctvProxyId: { type: integer, format: int64 }, cctvProxyName: { type: string, maxLength: 100 }, cctvProxyHost : { type: string, maxLength: 100 }, cctvProxyPort: { type: integer } } }, BasicCamera: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string, maxLength: 100 } } }, SearchCamera: { type: object, allOf: [ { $ref: #/definitions/BasicCamera }, { properties: { server: { $ref: #/definitions/DVRServer }, physicalLocation: { $ref: #/definitions/SimplePhysicalLocation }, cctvProxy: { $ref: #/definitions/BasicCctvProxy } } } ] }, CameraStatus: { type: string, enum: [ ACTIVE, INACTIVE ] }, Camera: { type: object, allOf: [ { $ref: #/definitions/SearchCamera }, { properties: { cameraServerId: { type: string, maxLength: 100 }, streamLink: { type: string, maxLength: 2000 }, isDome: { type: boolean }, status: { $ref: #/definitions/CameraStatus }, devices: { type: array, items: { $ref: #/definitions/SimpleDevice } }, urlStreaming: { type: string }, urlHistory: { type: string } } } ] }, OrderDirection: { type: string, enum: [ DESC, ASC ] }, CredentialFormat: { type: string, enum: [ CARD, BIOMETRY, LICENSE_PLATE, QRCODE, BLUETOOTH ] }, VirtualLobby: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string, maxLength: 50 }, description: { type: string }, physicalLocation: { $ref: #/definitions/PhysicalLocationWithPath }, origin: { $ref: #/definitions/PhysicalLocationWithPath }, destination: { $ref: #/definitions/PhysicalLocationWithPath }, status: { $ref: #/definitions/VirtualLobbyStatus }, group: { $ref: #/definitions/GroupWithPath }, physicalLocationOffset: { type: integer } } }, BasicREP: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string }, physicalLocation: { description: Physical location basic name, $ref: #/definitions/SimplePhysicalLocation }, taxNumber: { type: string } } }, DriverId: { type: object, properties: { driverId: { type: integer, format: int64 } } }, IncidentView: { type: object, properties: { id: { type: integer, format: int64 }, incidentId: { type: integer, format: int64 }, person: { $ref: #/definitions/BasicPerson }, viewDate: { type: string, format: date-time } } }, Blueprint: { type: object, properties: { id: { type: integer, format: int64 }, imageLink: { type: string }, invertedColors:{ type: boolean } } }, BlueprintItems: { type: object, properties: { cameras: { type: array, items: { $ref: #/definitions/BlueprintCamera } }, devices: { type: array, items: { $ref: #/definitions/BlueprintDevice } }, physicalLocations: { type: array, items: { $ref: #/definitions/BlueprintPhysicalLocation } } } }, BlueprintItem: { type: object, properties: { id: { type: integer, format: int64 }, latitude: { type: number, format: float }, longitude: { type: number, format: float } } }, BlueprintProperties:{ type: object, properties: { invertedColors:{ type:boolean } } }, BlueprintCamera: { type: object, allOf: [ { $ref: #/definitions/BlueprintItem }, { properties: { camera: { $ref: #/definitions/BasicCamera } } } ] }, BlueprintDevice: { type: object, allOf: [ { $ref: #/definitions/BlueprintItem }, { properties: { device: { $ref: #/definitions/SimpleDevice } } } ] }, BlueprintPhysicalLocation: { type: object, allOf: [ { $ref: #/definitions/BlueprintItem }, { properties: { physicalLocation: { $ref: #/definitions/SimplePhysicalLocation } } } ] }, ContingencyCardCredential: { type: object, properties: { personName: { type: string, minLength: 2, maxLength: 100 }, documentTypeId: { type: integer, format: int64 }, document: { type: string, minLength: 1, maxLength: 30 }, roleId: { type: integer, format: int64 }, startDate: { type: string }, expirationDate: { type: string }, cardTechnology: { description: (1=BARCODE, 2=PROXIMITY, 3=SMARTCARD), type: integer }, cardNumber: { type: integer, format: int64 } } }, DownloadAFD: { type: object, properties: { startDate: { type: string }, endDate: { type: string }, listRepDevice: { type: array, items: { type: integer, format: int64 } } } }, PersonVehicle: { type: object, properties: { associationId: { type: integer, format: int64 }, vehicleId: { type: integer, format: int64 }, person: { $ref: #/definitions/SimplePerson }, startDate: { type: string, maxLength: 30 }, endDate: { type: string, maxLength: 30 } } }, VirtualLobbyMovementRequest: { type: object, properties: { virtualLobbyId: { type: integer, format: int64 }, visitor: { $ref: #/definitions/BasicPerson }, visitorDocument: { $ref: #/definitions/Document }, visitorPhone: { $ref: #/definitions/Phone }, visitorEmail: { $ref: #/definitions/Email }, visitorRole: { $ref: #/definitions/BasicRole }, visitorRoleEndDate: { type: string }, employee: { $ref: #/definitions/BasicPerson }, accessCallId: { description: Optional param with access call ID that will be associated with the movement, type: integer, format: int64 } } }, SimpleOutputDevice: { type: object, properties: { deviceOutputId: { type: integer, format: int64 }, deviceOutputName: { type: string }, parentDeviceName: { type: string }, physicalLocation: { $ref: #/definitions/SimplePhysicalLocation } } }, VirtualLobbyPeopleInside: { type: object, properties: { movimentResponsiblePerson: { $ref: #/definitions/SearchPerson }, movimentEntranceDate: { type: string }, role: { $ref: #/definitions/BasicRole }, credentialStartDate: { type: string }, credentialExpirationDate: { type: string }, person: { $ref: #/definitions/SearchPerson }, visitedPerson: { $ref: #/definitions/SearchPerson } } }, VirtualLobbyPeopleInsideWithVisitorPhoto: { type: object, properties: { movimentResponsiblePerson: { $ref: #/definitions/SearchPerson }, movimentEntranceDate: { type: string }, role: { $ref: #/definitions/BasicRole }, credentialStartDate: { type: string }, credentialExpirationDate: { type: string }, visitorPerson: { $ref: #/definitions/SimplePersonWithPhoto }, visitedPerson: { $ref: #/definitions/SearchPerson } } }, ListOfVirtualLobbyPeopleInside: { type: object, properties: { totalRecords: { type: integer, format: int64 }, personList: { type: array, items: { $ref: #/definitions/VirtualLobbyPeopleInsideWithVisitorPhoto } } } }, VirtualLobbyAction: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string }, outputList: { type: array, items: { $ref: #/definitions/VirtualLobbyActionOutput } }, movementType: { $ref: #/definitions/MovementType }, active: { type: boolean } } }, VirtualLobbyActionOutput: { type: object, properties: { id: { type: integer, format: int64 }, output: { $ref: #/definitions/SimpleOutputDevice }, actionType: { $ref: #/definitions/VirtualLobbyActionType }, actionTime: { type: integer } } }, VirtualLobbyActionType: { type: string, enum: [ DISABLE_ACTION, ENABLE_ACTION, ENABLE_ACTION_WITH_TIMEOUT ] }, Vehicle: { type: object, properties: { vehicleId: { type: integer, format: int64 }, vehicleUse: { type: string, enum: [ PRIVATE_USE, COMMON_USE, FREE_USE ] }, licensePlate: { type: string, minLength: 1, maxLength: 15 }, brand: { type: string, minLength: 1, maxLength: 100 }, model: { type: string, minLength: 1, maxLength: 100 }, basicRole: { $ref: #/definitions/BasicRole } } }, AccessReportFilter: { type: object, properties: { personId: { type: integer, format: int64 }, physicalLocationId: { type: integer, format: int64 }, groupId: { type: integer, format: int64 }, startDate: { type: string }, endDate: { type: string } } }, BasicAvailableUser: { type: object, properties: { login: { type: string }, name: { type: string }, email: { type: string } } }, TermOfAgree: { type: object, properties: { id: { type: integer, format: int64 }, language: { $ref: #/definitions/Language }, type: { $ref: #/definitions/VisitType }, term: { type: string } } }, AccessRecords: { type: object, properties: { recordId: { type: integer, format: int64 }, accessDate: { type: string }, personId: { type: integer, format: int64 }, pisNumber: { type: integer, format: int64 },nsrNumber: { type: integer, format: int64 }, credentialId: { type: integer, format: int64 }, device: { $ref: #/definitions/SimpleDevice }, accessType: { type: string, description: access validation }, accessDirection: { $ref: #/definitions/AccessDirection } } }, SelfServiceTerminalProperty: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string, minLength: 1, maxLength: 100 }, backgroundColor: { type: string, minLength: 1, maxLength: 11 }, companyLogoURL: { type: string }, validityCredentialWithSchedulingInHours: { type: integer }, validityCredentialWithoutSchedulingInDays: { type: integer }, photoValidityInDaysForScheduledVisit: { type: integer }, photoValidityInDaysForProvisoryCard: { type: integer }, hasFacialRecognition: { type: boolean }, facialRecognitionForScheduledVisit: { type: boolean }, facialRecognitionForProvisoryCard: { type: boolean }, photoConferencePercentage: { type: integer }, termOfAgreeList: { type: array, items: { $ref: #/definitions/TermOfAgree } }, searchPersonByDocument: { type: boolean }, searchPersonByUserAndPassword: { type: boolean }, searchAttemptsPersonByUserAndPassword: { type: integer }, schedulingToleranceInMinutes: { type: integer }, feedbackPoll: { type: boolean }, validityFeedbackPollInDays: { type: integer }, feedbackPollQuestionForScheduledVisit: { $ref: #/definitions/FeedbackPollQuestionWithAnswers }, feedbackPollQuestionForProvisoryCard: { $ref: #/definitions/FeedbackPollQuestionWithAnswers }, termOfAgreeForScheduledVisit: { type: boolean }, termOfAgreeForProvisoryCard: { type: boolean }, cssFileName: { type: string }, ptbrDictionaryFileName: { type: string }, enDictionaryFileName: { type: string }, esDictionaryFileName: { type: string }, cssFileUrl: { type: string }, ptbrDictionaryFileUrl: { type: string }, enDictionaryFileUrl: { type: string }, esDictionaryFileUrl: { type: string }, credentialNotScheduleChangePhoto: { type: boolean }, visitScheduledChangePhoto: { type: boolean }, scheduledVisit: { type: boolean }, printReceiptForWorker: { type: boolean }, printReceiptForVisitor: { type: boolean }, takePhotoAutomatically: { type: boolean } } }, SelfServiceTerminalPropertyCompanyLogo: { type: object, properties: { id: { type: integer, format: int64 }, companyLogoUrl: { type: string } } }, SelfServiceTerminal: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string, minLength: 1, maxLength: 50 }, manufacturer: { type: string, enum: [ VIDEOSOFT, ACESSO_REMOTO, DIGICON ] }, physicalLocation: { $ref: #/definitions/SimplePhysicalLocation }, selfServiceTerminalProperty: { $ref: #/definitions/SelfServiceTerminalProperty }, status: { type: boolean }, dispenserPorts: { type: array, items: { $ref: #/definitions/DispenserPort } }, useMultiplePorts: { type: boolean } } }, VirtualLobbyStatus: { type: string, enum: [ INACTIVE, ACTIVE ] }, AccessTypeGroup: { type: string, enum: [ ACCESS_DENIED, ACCESS_VALID ] }, AccessTypeFilterGroup: { type: string, enum: [ ALL, ACCESS_DENIED, ACCESS_VALID ] }, ManagerDeviceFilter: { type: object, properties: { physicalLocationId: { type: integer, format: int64 }, term: { type: string, minLength: 3 }, managerDeviceType: { $ref: #/definitions/ManagerDeviceType } } }, AccessFilter: { type: object, properties: { physicalLocationId: { type: array, items: { type: integer, format: int64 } }, accessTypeFilterGroup: { $ref: #/definitions/AccessTypeFilterGroup }, readerDeviceId: { type: array, items: { type: integer, format: int64 } }, personId: { type: array, items: { type: integer, format: int64 } }, roleId: { type: array, items: { type: integer, format: int64 } }, groupId: { type: array, items: { type: integer, format: int64 } }, accessCount: { type: integer } } }, PersonBiometry: { type: object, properties: { id: { type: integer, format: int64 }, manufacturer: { $ref: #/definitions/BiometricManufacturer }, templates: { type: array, items: { type: string } }, person: { $ref: #/definitions/BasicPerson } } }, VisitorNotification: { type: object, properties: { scheduleId: { type: integer, format: int64 }, language: { $ref: #/definitions/Language }, email: { type: string } } }, ManagerDeviceType: { type: string, enum: [ ACCESS_CONTROLLER, REP, COLLECTOR ] }, &DeviceType: { type: string, enum: [ MANAGER, READER, MODULE, INPUT, OUTPUT ] }, Language: { type: string, enum: [ BRAZILIAN_PORTUGUESE, ENGLISH, SPANISH ] }, IncidentResume: { type: object, properties: { id: { type: integer, format: int64 }, description: { type: string }, status: { $ref: #/definitions/IncidentStatus }, priority: { $ref: #/definitions/IncidentPriority }, lastProcedureDate: { type: string, maxLength: 30 }, incidentDate: { type: string, maxLength: 30 }, physicalLocationId: { type: integer, format: int64 }, physicalLocation: { type: string }, incidentTypeId: { type: integer, format: int64 }, incidentType: { type: string } } }, IncidentDashboard: { type: object, properties: { pendings: { type: array, items: { $ref: #/definitions/IncidentResume } }, completedToday: { type: array, items: { $ref: #/definitions/IncidentResume } }, stopped: { type: array, items: { $ref: #/definitions/IncidentResume } }, inProgress: { type: array, items: { $ref: #/definitions/IncidentResume } }, incidentsWithPlannedPriority: { type: integer, format: int64 }, incidentsWithLowPriority: { type: integer, format: int64 }, incidentsWithMediumPriority: { type: integer, format: int64 }, incidentsWithHighPriority: { type: integer, format: int64 }, incidentsWithCriticalPriority: { type: integer, format: int64 } } }, AnalyticsIncident: { type: object, properties: { plannedPriorityIncidentsCount: { type: integer, format: int64 }, lowPriorityIncidentsCount: { type: integer, format: int64 }, mediumPriorityIncidentsCount: { type: integer, format: int64 }, highPriorityIncidentsCount: { type: integer, format: int64 }, criticalPriorityIncidentsCount: { type: integer, format: int64 } } }, AnalyticsAccess: { type: object, properties: { grantedAccessCount: { type: integer, format: int64 }, deniedAccessCount: { type: integer, format: int64 }, rejectedAccessCount: { type: integer, format: int64 } } }, AnalyticsPeoplePresent :{ type: object, properties: { peoplePresentCount: { type: integer, format: int64 } } }, AnalyticsInputCount: { type: object, properties: { alarmedInput: { type: integer, format: int64 } } }, ManagerDeviceStatusCount: { type: object, properties: { lackOfPaperStatusCount: { type: integer, format: int64 }, deviceLockedStatusCount: { type: integer, format: int64 }, batteryStatusCount: { type: integer, format: int64 }, noMemoryStatusCount: { type: integer, format: int64 } } }, AnalyticsComunicationStatus: { type: object, properties: { managersOnlineCount: { type: integer, format: int64 }, managersOfflineCount: { type: integer, format: int64 }, modulesOnlineCount: { type: integer, format: int64 }, modulesOfflineCount: { type: integer, format: int64 } } }, NewIncidentStatus: { type: object, properties: { incidentId: { type: integer, format: int64 }, newIncidentStatus: { $ref: #/definitions/IncidentStatus } } }, IncidentsByPhysicalLocation: { type: object, properties: { physicalLocationId: { type: integer, format: int64 }, physicalLocationName: { type: string }, amount: { type: integer, format: int64 } } }, IncidentsByPriority: { type: object, properties: { priority: { $ref: #/definitions/IncidentPriority }, amount: { type: integer, format: int64 } } }, IncidentsByType: { type:object, properties: { amount: { type: integer, format: int64 }, id:{ type: integer, format: int64 }, name:{ type: string } } }, IncidentsByMonth: { type:object, properties: { completed: { type: integer, format: int64 }, created: { type: integer, format: int64 }, opened: { type: integer, format: int64 }, month: { type: string }, year: { type: integer } } }, Clocking: { type: object, properties: { id: { type: integer, format: int64 }, person: { $ref: #/definitions/SimplePerson }, pis: { type: integer, format: int64 }, nsr: { type: integer, format: int64 }, reader: { $ref: #/definitions/SimpleDevice }, accessDate: { type: string }, reason: { type: string } } }, ClockingSearch: { type: object, properties: { startDate: { type: string, maxLength: 30 }, endDate: { type: string, maxLength: 30 }, page: { type: integer }, pageSize: { type: integer }, clockingType: { type: string, enum: [ REJECTED_CLOCKING, CLOCKING ] }, dateOrder: { $ref: #/definitions/OrderDirection }, pis: { type: integer, format: int64 }, nsrBegin: { type: integer }, nsrEnd: { type: integer }, readers: { type: array, items: { type: integer } }, persons: { type: array, items: { type: integer } } } }, TagModel: { type: object, properties: { tagModelType: { $ref: #/definitions/TagModelType }, showBarcode: { type: boolean }, showQRCode: { type: boolean }, showRoleName: { type: boolean }, showVisitedName: { type: boolean }, showPersonPhoto: { type: boolean }, showLogo: { type: boolean } } }, TagModelType: { type: string, default: HOLDER, enum: [ HOLDER, PROVISORY ] }, TagPrint: { type: object, properties: { tagModelType: { $ref: #/definitions/TagModelType, required: true }, person: { $ref: #/definitions/BasicPerson, required: true }, cardNumber: { type: integer, format: int64, required: true }, visitorRoleId: { type: integer, format: int64, required: false }, visited: { $ref: #/definitions/BasicPerson, required: false } } }, RecoveryStatus: { type: object, properties: { numberOfOk: { type: integer, format: int64 }, numberOfFault: { type: integer, format: int64 } } }, BasicTenant: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string } } }, TenantStatus: { type: string, default: BLOCKED, enum: [ BLOCKED, ACTIVE ] }, TrialStatus: { type: string, default: DISABLE, enum: [ DISABLE, ENABLE ] }, TrialType: { type: string, default: , enum: [ INCIDENT_MANAGEMENT, VIRTUAL_LOBBY ] }, VirtualLobbyMovement: { type: object, properties: { id: { type: integer, format: int64 }, visitor: { $ref: #/definitions/SimplePerson }, visited: { $ref: #/definitions/BasicPerson }, responsible : { $ref: #/definitions/BasicPerson }, movementDirection: { $ref: #/definitions/MovementDirection }, role: { $ref: #/definitions/BasicRole }, accessCallId: { type: integer, format: int64 } } }, VirtualLobbyExitMovement: { type: object, properties: { virtualLobbyId: { type: integer, format: int64 }, visitor: { $ref: #/definitions/BasicPerson }, accessCallId: { description: Optional param with access call ID that will be associated with the movement, type: integer, format: int64 } } }, RecognitionResult: { type: object, properties: { personId: { type: integer, format: int64 }, similarity: { type: integer } } }, FaceIndexResult: { type: object, properties: { success: { type: boolean } } }, FaceDeleteResult: { type: object, properties: { quantityDeletedFaces: { type: integer, format: int64 } } }, FaceCheckParams: { type: object, properties: { base64PhotoSource: { type: string }, base64PhotoTarget: { type: string } } }, SearchScheduledPeople: { type: object, properties: { people: { type: array, items: { type: integer, format: int64 } }, terminalId: { type: integer, format: int64 } } }, SimplePersonWithPhoto: { type: object, properties: { person: { $ref: #/definitions/SimplePerson }, photoURL: { type: string } } }, ListOfSimplePersonWithPhoto: { type: object, properties: { totalRecords: { type: integer, format: int64 }, personList: { type: array, items: { $ref: #/definitions/SimplePersonWithPhoto } } } }, PendencyExecuted:{ type:object, properties:{ pendencyId:{ type:integer, format:int64 } } }, Pendency:{ type:object, properties:{ id:{ type:integer, format:int64 }, pendencyType:{ $ref: #/definitions/PendencyType }, generationDate:{ type: string }, executionAttempts:{ type: integer }, pendencyStatus:{ $ref: #/definitions/PendencyStatus }, parentDeviceId:{ type:integer, format:int64 }, response:{ type:string }, param:{ type:string } } }, Notification:{ type:object, properties:{ pendencyId:{ type:integer, format:int64 }, deviceId:{ type:integer, format:int64 }, date:{ description:Notification date, type:string }, status:{ $ref:#/definitions/NotificationStatus } } }, NotificationStatus:{ description:Status of connection with server., type:string, default:ONLINE, enum:[ ONLINE, OFFLINE ] }, Alarm:{ type:object, allOf:[ { $ref:#/definitions/Notification }, { properties:{ inputState:{ $ref:#/definitions/InputOutputState } } } ] }, Event:{ type:object, allOf:[ { $ref:#/definitions/Notification }, { properties:{ eventType:{ $ref:#/definitions/EventType } } } ] }, InputOutputState:{ type:string, default:ACTIVE, enum:[ INACTIVE, ACTIVE ] }, AccessNotification:{ type:object, allOf:[ { $ref:#/definitions/Notification }, { properties:{ accessType:{ $ref:#/definitions/AccessType }, accessDirection:{ $ref:#/definitions/AccessDirection } } } ] }, AccessType:{ type:string, enum:[ ACCESS_VALID, ACCESS_DENIED_PERMISSION, ACCESS_DENIED_SITUATION, ACCESS_DENIED_CARD_VALIDITY, ACCESS_DENIED_LEVEL_CONTROLER, ACCESS_DENIED_CREDIT_ACCESS, ACCESS_DENIED_ROLE_RANGE, ACCESS_DENIED_LOCAL_RANGE, ACCESS_DENIED_CARD_NOT_FOUND, ACCESS_VALID_ACCOMPANY, ACCESS_DENIED_ACCOMPANY, ACCESS_DENIED_INVALID_AUTHORIZER, ACCESS_DENIED_WAITING_FOR_NEXT_VALIDATION, ACCESS_DENIED_ANTI_PASSBACK, ACCESS_DENIED_CREDIT_RANGE, ACCESS_DENIED_STOCKING_CONTROL, ACCESS_DENIED_NOT_PARKING_SPACE_TYPE, ACCESS_DENIED_NOT_PARKING_SPACE, ACCESS_COERCION, ACCESS_DENIED_BIOMETRY, ACCESS_DENIED_CARD_FORMAT_ERROR, ACCESS_DENIED_FACILITY_CODE, ACCESS_DENIED_PASSWORD, ACCESS_DENIED_SECOND_CARD_NOT_PRESENTED, ACCESS_DESISTENCE, ACCESS_VALID_AUTHORIZER, ACCESS_VALID_FACILITY_CODE, ACCESS_VALID_FRAUD, ACCESS_VALID_OUT_REPOSE, ACCESS_DENIED, ACCESS_DENIED_CREDENTIAL_NOT_FOUND, ACCESS_DENIED_CREDENTIAL_VALIDITY, ACCESS_DENIED_INVALID_VEHICLE_CREDENTIAL_FORMAT, ACCESS_DENIED_INVALID_VEHICLE_CARD_CREDENTIAL, ACCESS_DENIED_WAITING_VEHICLE, ACCESS_DENIED_READER_NOT_VALIDATE_VEHICLE, ACCESS_DENIED_PERSON_NOT_ASSOCIATED_WITH_VEHICLE ] }, Access:{ type:object, allOf:[ { $ref:#/definitions/AccessNotification }, { properties:{ cardId:{ type:integer, format:int64 }, personId:{ type:integer, format:int64 }, creditRange:{ type:integer } } } ] }, ClockIn:{ type:object, allOf:[ { $ref:#/definitions/Notification }, { properties:{ nsr:{ type:integer, format:int64 }, pis:{ type:integer, format:int64 } } } ] }, Presence:{ type:object, properties:{ id:{ type:integer, format:int64 }, presenceDate:{ type: string }, timezoneOffset:{ type: integer }, personId:{ type:integer, format:int64 }, readerId:{ type:integer, format:int64 }, physicalLocationId:{ type:integer, format:int64 } } }, TenantAccessLicense:{ type:object, properties:{ licenceNumberReadersFromAccessDevice: { type: integer }, licenceNumberReadersFromREP: { type: integer }, licenceNumberCredentials: { type: integer }, licenceNumberSensors: { type: integer }, licenceNumberCameras: { type: integer }, licenceNumberSelfServiceTerminals: { type: integer }, licenceNumberIncidentsUsers: { type: integer }, licenceNumberVirtualLobbies: { type: integer }, hasFacialRecognition: { type: boolean }, licenceNumberFacialRecognitions: { type: integer }, licenceNumberVirtualCredentials: { type: integer } } }, TenantLicenseInUse:{ type:object, properties:{ readersFromAccessDeviceInUse: { type: integer }, readersFromREPInUse: { type: integer }, credentialsInUse: { type: integer }, sensorsInUse: { type: integer }, camerasInUse: { type: integer }, selfServiceTerminalsInUse: { type: integer }, incidentsUsersInUse: { type: integer }, virtualLobbiesInUse: { type: integer }, facialRecognitionsInUse: { type: integer }, virtualCredentialsInUse: { type: integer } } }, TenantLicenseInfo:{ allOf: [ { $ref: #/definitions/TenantAccessLicense }, { $ref: #/definitions/TenantLicenseInUse } ] }, Tenant: { type: object, allOf: [ { $ref: #/definitions/BasicTenant }, { $ref: #/definitions/TenantAccessLicense }, { properties: { erpCode: { type: integer }, contractExpirationDate: { type: string }, schema: { type: string }, status: { $ref: #/definitions/TenantStatus }, tenantDomain: { type: string }, emailAdministration: { type: string }, pendencyTimeOutInHours: { type: integer }, pendencyExecutionAttempts: { type: integer }, pendencyCleaningTimeoutInDays: { type: integer }, trials:{ type: array, items: { $ref: #/definitions/Trial } } } } ] }, Trial: { type: object, properties: { type: { $ref: #/definitions/TrialType }, status: { $ref: #/definitions/TrialStatus } } }, HeadReaderDevice: { type:object, properties: { id: { type: integer, format: int64 }, name: { type: string }, key: { type: string }, physicalLocationDestinyId: { type: integer, format: int64 }, physicalLocationDestinyName: { type: string }, physicalLocationDestinyDatetime: { type: string }, physicalLocationValidatePersonSlotTime: { type: boolean }, allowedAccess: { type: boolean }, holidays: { type: array, items: { $ref: #/definitions/Holiday } }, daytracks: { type: array, items: { $ref: #/definitions/DayTracks } } } }, BluetoothValidationAccess: { type:object, properties: { personValidatePersonSlotTime: { description: (0=NO, 1=YES), type: integer }, personDaytracks: { type: array, items: { $ref: #/definitions/DayTracks } }, headManagerDevice: { type: array, items: { $ref: #/definitions/HeadManagerDevice } } } }, HeadManagerDevice: { type:object, properties: { id: { type: integer, format: int64 }, name: { type: string }, driverKey: { type: string }, readers: { type: array, items: { $ref: #/definitions/HeadReaderDevice } } } }, DayTracks: { type:object, properties:{ weekdays: { $ref: #/definitions/WeekDaysWithHoliday }, slotTimes: { type: array, items: { $ref: #/definitions/SlotTime } } } }, WeekDaysWithHoliday: { type:string, enum: [ SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, HOLIDAY ] }, ProvisoryCredentialReason: { type:object, properties: { id: { type: integer, format: int64 }, ptbr: { type: string, description: Min length 3 characters and max length 30 characters }, en: { type: string, description: Min length 3 characters and max length 30 characters }, es: { type: string, description: Min length 3 characters and max length 30 characters }, validityTime: { description: Length of time used to verify validity of the credential. Min value = 0. Max value = 99. The value will be converter internaly to Short type., type: integer, format: int32 }, validityTimeType: { $ref: #/definitions/ValidityTimeType }, active: { type: boolean } } }, UserAndPassword: { type:object, properties: { user: { type: string }, password: { type: string } } }, CallGenerationType:{ type:string, enum:[ DISABLED, ALWAYS, ON_ACCESS_ALLOWED, ON_ACCESS_DENIED ] }, VirtualLobbyDevice: { type: object, properties: { id: { type: integer, format: int64 }, device:{ $ref: #/definitions/SimpleDevice }, callGenerationType:{ $ref: #/definitions/CallGenerationType }, action:{ $ref: #/definitions/VirtualLobbyAction } } }, VisitType:{ type:string, enum:[ SCHEDULED, NOT_SCHEDULED ] }, DispenserPort: { type: object, properties: { port:{ type: string, minLength: 1, maxLength: 100 }, visitType:{ $ref: #/definitions/VisitType } } }, AccessCall: { type: object, properties: { id: { type: integer, format: int64 }, createDate:{ type: string }, status:{ $ref: #/definitions/AccessCallStatus }, origin:{ $ref: #/definitions/AccessCallOrigin }, operator:{ $ref: #/definitions/BasicPerson }, virtualLobby:{ $ref: #/definitions/VirtualLobby }, person:{ $ref: #/definitions/SimplePerson }, device:{ $ref: #/definitions/SimpleDevice }, selfServiceTerminal:{ $ref: #/definitions/BasicSelfServiceTerminal }, accessValidation:{ $ref: #/definitions/AccessCallValidationResult }, movementType : { $ref: #/definitions/MovementType }, personActiveRoles:{ type: array, items: { $ref: #/definitions/BasicRole } }, personPhotoUrl:{ type: string }, personSituation:{ $ref: #/definitions/PersonSituation } } }, AccessCallStatus:{ description:Status of access call., type:string, enum:[ CALLING, IN_PROGRESS, FINISHED_TIMED_OUT, FINISHED_ACCESS_ALLOWED, FINISHED_ACCESS_DENIED ] }, UpdateAccessCallStatus: { type: object, properties: { status: { $ref: #/definitions/AccessCallStatus } } }, AccessCallOrigin:{ description:Origin of access call., type:string, enum:[ DEVICE_INPUT, DEVICE_READER, SELFSERVICE_TERMINAL ] }, AccessCallValidationResult:{ description:Validation result of access call., type:object, properties: { allowed: { type: boolean }, reason: { type: string } } }, BasicSelfServiceTerminal: { type: object, properties: { id: { type: integer, format: int64 }, name: { type: string, minLength: 1, maxLength: 50 } } }, AccessCallPagedSearch: { type: object, properties: { page: { type: integer }, pageSize: { type: integer }, devices: { type: array, items: { type: integer, format: int64 } }, virtualLobbies: { type: array, items: { type: integer, format: int64 } }, fromAccessCallDate: { type: string, maxLength: 30 }, toAccessCallDate: { type: string, maxLength: 30 }, operators: { type: array, items: { type: integer, format: int64 } }, selfServiceTerminals: { type: array, items: { type: integer, format: int64 } }, statuses: { type: array, items: { $ref: #/definitions/AccessCallStatus } } } }, MovementDirection:{ description:Type of the direction of movement, type:string, enum: [ EXIT, ENTRANCE ] }, MovementType: { description:Type of the movement, type: string, enum: [ ISSUE_ACCESS_CREDENTIAL, REGISTER_LEAVE, REGISTER_ENTRY ] }, ValidityTimeType: { description:Type of the validity time, type: string, enum: [ HOUR, DAY ] }, FeedbackPollQuestion: { type: object, properties: { id: { type: integer, format: int64 }, ptbr: { type: string, description: Min length 3 characters and max length 100 characters }, en: { type: string, description: Min length 3 characters and max length 100 characters }, es: { type: string, description: Min length 3 characters and max length 100 characters } } }, FeedbackPollAnswer: { type: object, properties: { id: { type: integer, format: int64 }, questionId: { type: integer, format: int64 }, ptbr: { type: string, description: Min length 1 characters and max length 30 characters }, en: { type: string, description: Min length 1 characters and max length 30 characters }, es: { type: string, description: Min length 1 characters and max length 30 characters } } }, FeedbackPollQuestionWithAnswers: { type: object, properties: { question: { $ref: #/definitions/FeedbackPollQuestion }, answers: { type: array, items: { $ref: #/definitions/FeedbackPollAnswer } } } }, FeedbackPollPersonAnswer: { type: object, properties: { id: { type: integer, format: int64 }, person: { $ref: #/definitions/BasicPerson }, answer: { $ref: #/definitions/FeedbackPollAnswer }, feedbackPollDate: { type: string, maxLength: 30 } } }, FileType: { description:File type, type: string, enum: [ CSS, DICTIONARY ] }, ModulesUsage: { type: object, properties: { incidents: { type: boolean }, cameras: { type: boolean }, virtualLobbies: { type: boolean }, selfServiceTerminals: { type: boolean } } }, ApplicationUsage: { type: object, properties: { SAM: { type: boolean }, GAS: { type: boolean } } } } }

Este artigo foi útil para você?

Leave A Comment