You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 18 Next »

VayanData can provide you access to a sandbox. Please contact us: https://vayandata.com/contact-us/

--- openapi: 3.0.0 info: description: This is the specifications for the Linksper Console API version: "1.0.0" title: Linksper Console API contact: email: [email protected] license: name: Apache 2.0 url: 'http://www.apache.org/licenses/LICENSE-2.0.html' tags: - name: Authentication description: Authenticate to the API - name: Explore description: Explore the BOS hiearchies and their respectives assets - name: Manage description: Create, modify delete data models content - name: Operate description: Get information / update for a specific type of assets - name: Troubleshoot description: Check BOS status paths: /oauth/token: post: tags: - Authentication summary: Authenticate using jwt operationId: authenticate description: Authenticate to the API using JWT. externalDocs: description: How to setup a user with JWT in Niagara url: https://doc.active-framework.com/display/APIDR/Getting+Started+With+JWT+Authenticaion requestBody: required: true content: application/json: schema: type: object properties: username: type: string description: username password: type: string description: password required: - username - password responses: '200': description: search result matching criteria content: application/json: schema: type: object properties: result: type: object properties: user: type: string description: user token: type: string description: password '403': description: | Forbidden '404': description: | Ressource not found - Cannot find the Asset with the given id '500': description: Internal server error /v1/explore/hierarchies: get: tags: - Explore summary: Explore all hierarchies operationId: exploreHierarchies description: Retrieve all the hierarchy roots with the lk:exposeOnApi Tag responses: '200': description: all the hierarchy roots content: application/json: schema: type: array items: $ref: '#/components/schemas/Component' '500': description: Internal server error /v1/explore/hierarchies/{name}: get: tags: - Explore summary: Explore a single hierarchy operationId: exploreHierarchy description: Retrieve the hierarchy that match the given name parameters: - in: path name: name schema: type: string required: true description: name of the hierarchy to get - $ref: "#/components/parameters/additionalFields" - in: query name: depth description: maximum depth of descendants schema: type: integer format: int32 minimum: 0 default: 1 responses: '200': description: search results matching criteria content: application/json: schema: type: array items: $ref: '#/components/schemas/Component' '400': description: | Bad request - Negative depth value '403': description: | Forbidden '404': description: | Ressource not found - Cannot find the hierarchy with the given name '500': description: Internal server error /v1/explore/assets: get: tags: - Explore summary: Explore a list of assets operationId: exploreAsset description: Retrieve the asset matching the given query or the given assetType, if both parameters are given, only the query will be taken into account parameters: - in: query name: query description: The full query that will be executed to obtain the assets schema: type: string - in: query name: assetType description: The desired assetType schema: type: string - $ref: "#/components/parameters/additionalFields" responses: '200': description: search result matching criteria content: application/json: schema: $ref: '#/components/schemas/Component' '403': description: | Forbidden '404': description: | Ressource not found - Cannot find the Asset with the given id '500': description: Internal server error /v1/explore/assets/{id}: get: tags: - Explore summary: Explore an asset operationId: exploreAssetById description: Retrieve the asset matching the given id parameters: - in: path name: id description: ID of the asset to get schema: type: string required: true - $ref: "#/components/parameters/additionalFields" responses: '200': description: search result matching criteria content: application/json: schema: $ref: '#/components/schemas/Component' '403': description: | Forbidden '404': description: | Ressource not found - Cannot find the Asset with the given id '500': description: Internal server error /v1/explore/assets/{id}/alarms: get: tags: - Explore summary: Explore the alarms of the given asset operationId: exploreAssetsAlarms description: Retrieve the alarms associated to the asset matching the given id parameters: - in: path name: id description: ID of the asset to get schema: type: string required: true - $ref: "#/components/parameters/period" - $ref: "#/components/parameters/startDate" - $ref: "#/components/parameters/endDate" - $ref: "#/components/parameters/aggregatedData" - $ref: "#/components/parameters/alarmAdditionalFields" - $ref: "#/components/parameters/alarmLimit" responses: '200': description: search results matching criteria content: application/json: schema: type: array items: $ref: '#/components/schemas/Alarm' '400': description: | Bad request - Negative limit value - Limit is less than MaxAlarmCount - Invalid parameter value - Invalid target: The id targets an Asset with incorrect or missing values '403': description: | Forbidden '404': description: | Ressource not found - Cannot find the Asset with the given id '500': description: Internal server error /v1/explore/assets/{id}/devices: get: tags: - Explore summary: Explore the devices of the given asset operationId: exploreAssetsDevices description: Retrieve the devices associated to the asset matching the given id parameters: - in: path name: id description: ID of the asset to get schema: type: string required: true - $ref: "#/components/parameters/additionalFields" responses: '200': description: search results matching criteria content: application/json: schema: type: array items: $ref: '#/components/schemas/Component' '400': description: | Bad request - Invalid parameter value - Invalid target: The id targets an Asset with incorrect or missing values '403': description: | Forbidden '404': description: | Ressource not found - Cannot find the asset with the given id '500': description: internal server error /v1/explore/assets/{id}/equipment: get: tags: - Explore summary: Explore the equipment of the given asset operationId: exploreAssetsEquipment description: Retrieve the equipment associated to the asset matching the given id parameters: - in: path name: id description: ID of the asset to get schema: type: string required: true - $ref: "#/components/parameters/additionalFields" responses: '200': description: search results matching criteria content: application/json: schema: type: array items: $ref: '#/components/schemas/Component' '400': description: | Bad request - Invalid parameter value - Invalid target: The id targets an Asset with incorrect or missing values '403': description: | Forbidden '404': description: | Ressource not found - Cannot find the asset with the given id '500': description: internal server error /v1/explore/assets/{id}/histories: get: tags: - Explore summary: Explore the histories of the given hierarchy operationId: exploreHierarchyHistories description: | Retrieve the histories contained in the hierarchy matching the given id. Will encode - the id - the timeZone - the capacity - the fullPolicy - the interval - the valueFacets - the tags parameters: - in: path name: id description: ID of the Asset to get schema: type: string required: true - $ref: "#/components/parameters/period" - $ref: "#/components/parameters/startDate" - $ref: "#/components/parameters/endDate" - $ref: "#/components/parameters/rollupInterval" - $ref: "#/components/parameters/rollupOperator" - $ref: "#/components/parameters/delta" - $ref: "#/components/parameters/retrieveValues" - $ref: "#/components/parameters/historyLimit" responses: '200': description: search results matching criteria content: application/json: schema: type: array items: $ref: '#/components/schemas/History' '400': description: | Bad request - Negative limit value - Limit is higher than MaxHistoryCount - Invalid parameter value - The targeted Node doesn't have the "b:definition" tag - The targeted InfoSource's parent ControlPoint doesn't have the n:history tag - The given id targets a source which parent isn't a DeviceNetwork or a Device or a Folder or a Point '403': description: | Forbidden '404': description: | Ressource not found - Cannot find the hierarchy with the given id - Found no aggregated/raw histories associated to the hierarchy with the given id '500': description: internal server error /v1/explore/assets/{id}/points: get: tags: - Explore summary: Explore the points of the associated asset operationId: exploreAssetsPoints description: Retrieve the points associated to the asset matching the given id parameters: - in: path name: id description: ID of the asset to get schema: type: string required: true - $ref: "#/components/parameters/additionalFields" responses: '200': description: search results matching criteria content: application/json: schema: type: array items: $ref: '#/components/schemas/Component' '400': description: | Bad request - Invalid parameter value - Invalid target: The id targets an Asset with incorrect or missing values '403': description: | Forbidden '404': description: | Ressource not found - Cannot find the Asset with the given id '500': description: internal server error /v1/explore/assets/{id}/schedules: get: tags: - Explore summary: Explore the schedules of the associated asset operationId: exploreAssetsSchedules description: Retrieve the schedules associated to the asset matching the given id parameters: - in: path name: id description: ID of the asset to get schema: type: string required: true - $ref: "#/components/parameters/additionalFields" - in: query name: retrieveEvents description: if set to true, the request will retrieve the special and recurring events (if possible) of the schedules schema: type: boolean default: false responses: '200': description: search results matching criteria content: application/json: schema: type: array items: $ref: '#/components/schemas/Schedule' '400': description: | Bad request - Invalid parameter value - Invalid target: The id targets an Asset with incorrect or missing values '403': description: | Forbidden '404': description: | Ressource not found - Cannot find the Asset with the given id '500': description: internal server error /v1/explore/assets/{id}/synthesisHistories: get: tags: - Explore summary: Explore the Synthesis Histories of the associated asset operationId: exploreAssetsSynthesisHistories description: Retrieve the Synthesis Histories associated to the asset matching the given id parameters: - in: path name: id description: ID of the Asset to get schema: type: string required: true - $ref: "#/components/parameters/period" - $ref: "#/components/parameters/startDate" - $ref: "#/components/parameters/endDate" - $ref: "#/components/parameters/rollupInterval" - $ref: "#/components/parameters/rollupOperator" - $ref: "#/components/parameters/delta" - $ref: "#/components/parameters/retrieveValues" - $ref: "#/components/parameters/historyLimit" responses: '200': description: search results matching criteria content: application/json: schema: type: array items: $ref: '#/components/schemas/History' '400': description: | Bad request - Invalid parameter value - Negative limit value - Limit is higher than MaxHistoryCount - Invalid target: The id targets an Asset with incorrect or missing values '403': description: | Forbidden '404': description: | Ressource not found - Cannot find the Asset with the given id '500': description: internal server error /v1/explore/assets/{id}/synthesisPoints: get: tags: - Explore summary: Explore the synthesis points of the associated asset operationId: exploreAssetsSynthesisPoints description: Retrieve the synthesis points associated to the asset matching the given id parameters: - in: path name: id description: ID of the asset to get schema: type: string required: true - $ref: "#/components/parameters/additionalFields" responses: '200': description: search results matching criteria content: application/json: schema: type: array items: $ref: '#/components/schemas/Component' '400': description: | Bad request - Invalid parameter value - Invalid target: The id targets an Asset with incorrect or missing values '403': description: | Forbidden '404': description: | Ressource not found - Cannot find the Asset with the given id '500': description: internal server error /v1/manage/models: get: tags: - Manage summary: Get all the Nodes associated to a model operationId: getManageModels description: Retrieve all the Nodes associated to a model parameters: - in: query name: aspect description: filter on the parent aspect required: false explode: true schema: type: string - in: query name: nodeDefinition description: filter on the parent Node Definition required: false explode: true schema: type: string - $ref: "#/components/parameters/additionalFields" - in: query name: dataModelOnly description: whether to query only b:dataModels Nodes required: false explode: true schema: type: boolean default: true responses: '200': description: search results matching criteria content: application/json: schema: type: object properties: AspectName: type: object properties: NodeDefinitionName: type: array items: $ref: '#/components/schemas/Component' '400': description: | Bad request - Invalid parameter value '403': description: | Forbidden '404': description: | - Aspect not found - Node Definition not found '500': description: Internal server error post: tags: - Manage summary: Create models operationId: postManageModels description: Create new Nodes parameters: - $ref: "#/components/parameters/additionalFields" requestBody: required: true content: application/json: schema: type: array items: $ref: "#/components/schemas/Node" responses: '200': description: two arrays, success with all the successfully created Nodes, failure with all the failed creations content: application/json: schema: type: object properties: success: type: array items: $ref: '#/components/schemas/Component' failures: type: object properties: nodeID: type: string example: "Error message" '400': description: | Bad request - Invalid parameter value - Missing parameter value '403': description: | Forbidden '404': description: | - Parent Aspect not found - Parent NodeDefinition not found '500': description: Internal server error put: tags: - Manage summary: update model operationId: putManageModels description: Update a single Node parameters: - $ref: "#/components/parameters/additionalFields" requestBody: required: true content: application/json: schema: $ref: "#/components/schemas/NodeForUpdate" responses: '200': description: the updated Node content: application/json: schema: $ref: '#/components/schemas/Component' '400': description: | Bad request - Invalid parameter value - Missing parameter value '403': description: | Forbidden '404': description: | Target node not found '500': description: Internal server error delete: tags: - Manage summary: delete model operationId: deleteManageModels description: Delete Nodes parameters: - $ref: "#/components/parameters/additionalFields" responses: '200': description: the deleted Nodes content: application/json: schema: $ref: '#/components/schemas/Component' '400': description: | Bad request - Invalid parameter value - Missing parameter value '403': description: | Forbidden '404': description: | Target node not found '500': description: Internal server error /v1/operate/alarms: get: tags: - Operate summary: Get the alarms matching the query operationId: operateAlarms description: Retrieve the alarms matching the given query parameters: - in: query name: query description: filter on the alarms, bql predicate required: false explode: true schema: type: string - $ref: "#/components/parameters/period" - $ref: "#/components/parameters/startDate" - $ref: "#/components/parameters/endDate" - $ref: "#/components/parameters/alarmAdditionalFields" - $ref: "#/components/parameters/alarmLimit" responses: '200': description: search results matching criteria content: application/json: schema: type: array items: $ref: '#/components/schemas/Alarm' '400': description: | Bad request - Invalid parameter value '403': description: | Forbidden '500': description: Internal server error post: tags: - Operate summary: ack the alarms matching the uuids operationId: postOperateAlarms description: Ack the alarms matching the uuids requestBody: required: true content: application/json: schema: type: object properties: uuid: type: array description: filter on the alarms to ack example: [ "a93baf31-8072-4315-b168-ddca1fa3fd9d" ] items: type: string required: - uuid responses: '200': description: two arrays, success with all the uuids of the alarms successfully acked, failure with all the uuids of the alarms on which the ack wasn't possible content: application/json: schema: type: object properties: success: type: array items: type: string failures: type: array items: type: string '400': description: | Bad request - Invalid parameter value '403': description: | Forbidden '500': description: Internal server error /v1/operate/alarms/{uuid}: get: tags: - Operate summary: Get the alarm matching the uuid operationId: operateAlarm description: Retrieve the alarm matching the given uuid parameters: - in: path name: uuid description: uuid of the target required: true explode: true schema: type: string - $ref: "#/components/parameters/alarmAdditionalFields" responses: '200': description: search result matching criteria content: application/json: schema: $ref: '#/components/schemas/Alarm' '400': description: | Bad request - Invalid parameter value '403': description: | Forbidden '404': description: | Resource not found '500': description: Internal server error /v1/operate/components: get: tags: - Operate summary: Get the components matching the query operationId: operateComponents description: Retrieve the components matching the given query parameters: - in: query name: query description: filter on the devices, can be any query required: false explode: true schema: type: string - $ref: "#/components/parameters/additionalFields" responses: '200': description: search results matching criteria content: application/json: schema: type: array items: $ref: '#/components/schemas/Component' '400': description: | Bad request - Invalid parameter value '403': description: | Forbidden '500': description: Internal server error /v1/operate/devices: get: tags: - Operate summary: Get the devices matching the query operationId: operateDevices description: Retrieve the devices and the PointFolders (resulting from a propagation) matching the given query parameters: - in: query name: query description: filter on the devices, neql predicate required: false explode: true schema: type: string - $ref: "#/components/parameters/additionalFields" responses: '200': description: search results matching criteria content: application/json: schema: type: array items: $ref: '#/components/schemas/Component' '400': description: | Bad request - Invalid parameter value '403': description: | Forbidden '500': description: Internal server error /v1/operate/devices/{id}: get: tags: - Operate summary: Get the device matching the id operationId: getOperateDevice description: Retrieve the device or the PointFolder (resulting from a propagation) matching the given id parameters: - in: path name: id description: id of the target required: true explode: true schema: type: string - $ref: "#/components/parameters/additionalFields" responses: '200': description: search results matching criteria content: application/json: schema: $ref: '#/components/schemas/Component' '400': description: | Bad request - Invalid parameter value '403': description: | Forbidden '404': description: Resource not found '500': description: Internal server error /v1/operate/equipment: get: tags: - Operate summary: Get the equipment matching the query operationId: operateEquipment description: Retrieve the equipment matching the given query parameters: - in: query name: query description: filter on the devices, neql predicate required: false explode: true schema: type: string - $ref: "#/components/parameters/additionalFields" responses: '200': description: search results matching criteria content: application/json: schema: type: array items: $ref: '#/components/schemas/Component' '400': description: | Bad request - Invalid parameter value '403': description: | Forbidden '500': description: Internal server error /v1/operate/equipment/{id}: get: tags: - Operate summary: Get the equipment matching the id operationId: getOperateSingleEquipment description: Retrieve the equipment matching the given id parameters: - in: path name: id description: id of the target required: true explode: true schema: type: string - $ref: "#/components/parameters/additionalFields" responses: '200': description: search results matching criteria content: application/json: schema: $ref: '#/components/schemas/Component' '400': description: | Bad request - Invalid parameter value '403': description: | Forbidden '404': description: Resource not found '500': description: Internal server error /v1/operate/histories: get: tags: - Operate summary: Get the histories matching the query. operationId: operateHistories description: | Retrieve the histories contained in the model matching the given query. Will encode - the id - the timeZone - the capacity - the fullPolicy - the interval - the valueFacets - the tags parameters: - in: query name: query description: filter on the histories, bql predicate required: false explode: true schema: type: string - $ref: "#/components/parameters/period" - $ref: "#/components/parameters/startDate" - $ref: "#/components/parameters/endDate" - $ref: "#/components/parameters/rollupInterval" - $ref: "#/components/parameters/rollupOperator" - $ref: "#/components/parameters/delta" - $ref: "#/components/parameters/retrieveValues" - $ref: "#/components/parameters/historyLimit" responses: '200': description: search results matching criteria content: application/json: schema: type: array items: $ref: '#/components/schemas/History' '400': description: | Bad request - Empty result - Start is after end - Invalid parameter value '403': description: | Forbidden '500': description: Internal server error /v1/operate/histories/{id}: get: tags: - Operate summary: Explore the histories of the given source. If the history comes from a NiagaraHistoryimport, it will fetch the latest data. operationId: getOperateModelHistoriesForId description: | Retrieve the histories contained in the model matching the given id. Will encode - the id - the timeZone - the capacity - the fullPolicy - the interval - the valueFacets - the tags parameters: - in: path name: id description: ID of the source to get schema: type: string required: true - $ref: "#/components/parameters/period" - $ref: "#/components/parameters/startDate" - $ref: "#/components/parameters/endDate" - $ref: "#/components/parameters/rollupInterval" - $ref: "#/components/parameters/rollupOperator" - $ref: "#/components/parameters/delta" - $ref: "#/components/parameters/retrieveValues" - $ref: "#/components/parameters/historyLimit" responses: '200': description: search results matching criteria content: application/json: schema: type: array items: $ref: '#/components/schemas/History' '400': description: | Bad request - Negative limit value - Limit is less than MaxHistoryCount - Invalid parameter value - The targeted Node doesn't have the "b:definition" tag - The targeted InfoSource's parent ControlPoint doesn't have the n:history tag - The given id targets a source which parent isn't a DeviceNetwork or a Device or a Folder or a Point '403': description: | Forbidden '404': description: | Ressource not found - Cannot find the model with the given id - Found no aggregated/raw histories associated to the model with the given id '500': description: internal server error put: tags: - Operate summary: Add a record the the History inside the targeted source. operationId: putExploreModelHistoriesForId description: | Create a History Record matching the record type of the History and append it to the History. As for now, BooleanTrendRecords, EnumTrendRecords, NumericTrendRecords and StringRecords are supported. parameters: - in: path name: id description: ID of the source to get schema: type: string required: true requestBody: required: true content: application/json: schema: type: array items: properties: date: type: string description: the timestamp of the record in ISO 8601 format example: "2021-05-25T12:00:00.000Z" value: type: string description: the value of the record in a string (example, for a BooleanTrendRecords, you must use "true" instead of true). For an EnumTrendRecord, it is possible to use the ordinal or the tag. example: "myValue" status: type: string description: the status of the record enum: [ ok, disabled, fault, down, alarm, stale, overridden, null, unackedAlarm ] required: - action responses: '200': description: success message content: application/json: schema: type: object properties: message: type: string example: Records successfully added '400': description: | Bad request - Invalid parameter value - The targeted history record type isn't supported - Cannot append out-of-order record - Cannot create a Dynamic enum from the tag value '403': description: | Forbidden '404': description: | Ressource not found - Cannot find the source with the given id - The target source has no HistoryExts '500': description: internal server error /v1/operate/points: get: tags: - Operate summary: Get the points matching the given query operationId: operatePoints description: Retrieve the points matching the query parameters: - in: query name: query description: filter on the points, neql predicate required: false schema: type: string - in: query name: status description: filter on the point status required: false schema: type: string - $ref: "#/components/parameters/additionalFields" responses: '200': description: search results matching criteria content: application/json: schema: type: array items: $ref: '#/components/schemas/Component' '400': description: | Bad request - Invalid parameter value '403': description: | Forbidden '500': description: Internal server error post: tags: - Operate summary: Invoke an action on targeted points operationId: postOperatePoints description: Generate the value, retrieve the action and invoke it on the target points requestBody: required: true content: application/json: schema: type: object properties: query: type: string description: neql filter on the points example: "n:type = 'control:NumericWritable'" action: type: string description: Name of the action example: "override" value: type: string description: The Argument of the action. Always a String example: "10.0" duration: type: integer description: In the case of an override, the duration of the override in milliseconds example: "10000" required: - action responses: '200': description: two arrays, success with all the components on which the action was successfully invoked, failure with all the components on which the action wasn't successfully invoked content: application/json: schema: type: object properties: success: type: array items: $ref: '#/components/schemas/Component' failures: type: array items: $ref: '#/components/schemas/Component' '400': description: | Bad request - Negative duration value - The given query doesn't target any points - The action doesn't exist - Cannot build the argument - Invalid parameter value '500': description: Internal server error /v1/operate/points/{id}: get: tags: - Operate summary: Get the point matching the given id operationId: getOperatePoint description: Retrieve the point matching the id parameters: - in: path name: id description: id of the target point required: true schema: type: string - in: query name: status description: filter on the point status required: false schema: type: string - $ref: "#/components/parameters/additionalFields" responses: '200': description: search result matching criteria content: application/json: schema: $ref: '#/components/schemas/Component' '400': description: | Bad request - Invalid parameter value '403': description: | Forbidden '404': description: | Resource not found '500': description: Internal server error post: tags: - Operate summary: Invoke an action operationId: postOperatePoint description: Invoke an action on the point matching the id parameters: - in: path name: id description: id of the target point required: true schema: type: string requestBody: required: true content: application/json: schema: type: object properties: action: type: string description: Name of the action example: "override" value: type: string description: The Argument of the action. Always a String example: "10.0" duration: type: integer description: In the case of an override, the duration of the override in milliseconds example: "10000" required: - action responses: '200': description: two arrays, success with all the components on which the action was successfully invoked, failure with all the components on which the action wasn't successfully invoked content: application/json: schema: type: object properties: success: type: array items: $ref: '#/components/schemas/Component' failures: type: array items: $ref: '#/components/schemas/Component' '400': description: | Bad request - Negative duration value - The given query doesn't target any points - The action doesn't exist - Cannot build the argument - Invalid parameter value '404': description: Resource not found '500': description: Internal server error /v1/operate/query: get: tags: - Operate summary: Get the table matching the query operationId: operateQuery description: Resolve the query and encode the resulting table parameters: - in: query name: query description: the query to resolve, must result in a table required: true explode: true schema: type: string responses: '200': description: search results matching query, the content of the objects will entirely depend on the query content: application/json: schema: type: array items: type: object '400': description: | Bad request - Invalid query '500': description: Internal server error /v1/operate/reference: get: tags: - Operate summary: Get the reference matching the query operationId: operateReference description: Retrieve the reference matching the given query parameters: - in: query name: query description: filter on the references, bql predicate required: false explode: true schema: type: string - $ref: "#/components/parameters/additionalFields" responses: '200': description: search results matching criteria content: application/json: schema: type: array items: $ref: '#/components/schemas/Component' '400': description: | Bad request - Invalid parameter value '403': description: | Forbidden '500': description: Internal server error /v1/operate/reference/{id}: get: tags: - Operate summary: Get the reference matching the id operationId: getOperateSingleReference description: Retrieve the reference matching the given id parameters: - in: path name: id description: id of the target required: true explode: true schema: type: string - $ref: "#/components/parameters/additionalFields" responses: '200': description: search result matching criteria content: application/json: schema: $ref: '#/components/schemas/Component' '400': description: | Bad request - Invalid parameter value '403': description: | Forbidden '404': description: Resource not found '500': description: Internal server error /v1/operate/schedules/{id}/recurringEvents: post: tags: - Operate summary: Create a recurring event operationId: postOperateScheduleRecurringEvents description: Create a special event in the Schedule matching the id parameters: - in: path name: id description: id of the target Schedule required: true schema: type: string requestBody: required: true content: application/json: schema: type: object properties: day: type: string description: The day of the event enum: [ monday, tuesday, wednesday, thursday, friday, saturday, sunday ] startTime: type: string description: The start time of the event in ISO 8601 example: "17:00:00.000Z" endTime: type: string description: The end time of the event in ISO 8601 example: "18:00:00.000Z" value: type: string description: The value of the event. Can be a String, a boolean or a number example: "My Event value" eventId: type: string description: The id of the event. If it's absent, a unique id will be generated example: "My Id value" required: - day - startTime - endTime - value responses: '200': description: The created recurring event content: application/json: schema: $ref: '#/components/schemas/RecurringEvent' '400': description: | Bad request - The source isn't a weekly schedule - Invalid parameter value - Conflicting events '404': description: Resource not found '500': description: Internal server error /v1/operate/schedules/{scheduleId}/recurringEvents/{eventId}: get: tags: - Operate summary: Get a recurring event operationId: getOperateSchedulesRecurringEvents description: Retrieve the recurring event matching the given eventId in the schedule matching the given scheduleId parameters: - in: path name: scheduleId description: id of the target Schedule required: true schema: type: string - in: path name: eventId description: id of the target Event required: true schema: type: string responses: '200': description: The matching recurring event content: application/json: schema: $ref: '#/components/schemas/RecurringEvent' '400': description: | Bad request - The source isn't a weekly schedule - Invalid parameter value '404': description: Resource not found '500': description: Internal server error put: tags: - Operate summary: Update a recurring event operationId: putOperateSchedulesRecurringEvents description: Update the recurring event matching the given eventId in the schedule matching the given scheduleId parameters: - in: path name: scheduleId description: id of the target Schedule required: true schema: type: string - in: path name: eventId description: id of the target Event required: true schema: type: string requestBody: required: true content: application/json: schema: type: object properties: day: type: string description: The day of the event enum: [ monday, tuesday, wednesday, thursday, friday, saturday, sunday ] startTime: type: string description: The start time of the event in ISO 8601 example: "17:00:00.000Z" endTime: type: string description: The end time of the event in ISO 8601 example: "18:00:00.000Z" value: type: string description: The value of the event. Can be a String, a boolean or a number example: "My Event value" required: - day - startTime - endTime - value responses: '200': description: The udpated recurring event content: application/json: schema: $ref: '#/components/schemas/RecurringEvent' '400': description: | Bad request - The source isn't a weekly schedule - Invalid parameter value - Conflicting events '404': description: Resource not found '500': description: Internal server error delete: tags: - Operate summary: Delete a recurring event operationId: deleteOperateSchedulesRecurringEvents description: Delete the recurring event matching the given eventId in the schedule matching the given scheduleId parameters: - in: path name: scheduleId description: id of the target Schedule required: true schema: type: string - in: path name: eventId description: id of the target Event required: true schema: type: string responses: '200': description: The deleted recurring event content: application/json: schema: $ref: '#/components/schemas/DeletedEvent' '400': description: | Bad request - The source isn't a weekly schedule - Invalid parameter value '404': description: Resource not found '500': description: Internal server error /v1/operate/schedules/{id}/specialEvents: post: tags: - Operate summary: Create a special event operationId: postOperateScheduleSpecialEvents description: Create a special event in the Schedule matching the id parameters: - in: path name: id description: id of the target Schedule required: true schema: type: string requestBody: required: true content: application/json: schema: type: object properties: eventName: type: string description: The name of the event example: "MyEvent" startDate: type: string description: The start date of the event in ISO 8601 example: "2021-05-25T12:00:00.000Z" endDate: type: string description: The end date of the event in ISO 8601 example: "2021-05-25T13:00:00.000Z" value: type: string description: The value of the event. Can be a String, a boolean or a number example: "My Event value" eventId: type: string description: The id of the event. If it's absent, a unique id will be generated example: "My Id value" required: - eventName - startDate - endDate - value responses: '200': description: success message content: application/json: schema: $ref: '#/components/schemas/SingleEvent' '400': description: | Bad request - The source isn't a schedule - Invalid parameter value - Conflicting events '404': description: Resource not found '500': description: Internal server error /v1/operate/schedules/{scheduleId}/specialEvents/{eventId}: get: tags: - Operate summary: Get a special event operationId: getOperateSchedulesSpecialEvents description: Retrieve the special event matching the given eventId in the schedule matching the given scheduleId parameters: - in: path name: scheduleId description: id of the target Schedule required: true schema: type: string - in: path name: eventId description: id of the target Event required: true schema: type: string responses: '200': description: The matching special event content: application/json: schema: $ref: '#/components/schemas/SingleEvent' '400': description: | Bad request - The source isn't a weekly schedule - Invalid parameter value '404': description: Resource not found '500': description: Internal server error put: tags: - Operate summary: Update a special event operationId: putOperateSchedulesSpecialEvents description: Update the special event matching the given eventId in the schedule matching the given scheduleId parameters: - in: path name: scheduleId description: id of the target Schedule required: true schema: type: string - in: path name: eventId description: id of the target Event required: true schema: type: string requestBody: required: true content: application/json: schema: type: object properties: startTime: type: string description: The start time of the event in ISO 8601 example: "17:00:00.000Z" endTime: type: string description: The end time of the event in ISO 8601 example: "18:00:00.000Z" value: type: string description: The value of the event. Can be a String, a boolean or a number example: "My Event value" required: - day - startTime - endTime - value responses: '200': description: The udpated special event content: application/json: schema: $ref: '#/components/schemas/SingleEvent' '400': description: | Bad request - The source isn't a weekly schedule - Invalid parameter value - Conflicting events '404': description: Resource not found '500': description: Internal server error delete: tags: - Operate summary: Delete a special event operationId: deleteOperateSchedulesSpecialEvents description: Delete the special event matching the given eventId in the schedule matching the given scheduleId parameters: - in: path name: scheduleId description: id of the target Schedule required: true schema: type: string - in: path name: eventId description: id of the target Event required: true schema: type: string responses: '200': description: The deleted special event content: application/json: schema: $ref: '#/components/schemas/DeletedEvent' '400': description: | Bad request - The source isn't a weekly schedule - Invalid parameter value '404': description: Resource not found '500': description: Internal server error /v1/troubleshoot/integrationTests: get: tags: - Troubleshoot summary: Integration tests results operationId: getTroubleshootIntegrationTests description: Get the result of each integration tests responses: '200': description: search results matching criteria content: application/json: schema: type: array items: $ref: '#/components/schemas/Component' '403': description: | Forbidden '404': description: Cannot find the test controller '500': description: Internal server error post: tags: - Troubleshoot summary: Execute Integration tests operationId: postTroubleshootIntegrationTests description: Execute all the integration tests responses: '200': description: number of executed tests content: application/json: schema: type: object properties: tests: type: integer '403': description: | Forbidden '404': description: Cannot find the test controller '500': description: Internal server error /v1/troubleshoot/integrationTestsReport: get: tags: - Troubleshoot summary: Integration tests report operationId: getTroubleshootIntegrationTestsReport description: Get the report of the integration tests responses: '200': description: the report in markdown content: application/json: schema: type: object properties: report: type: string '400': description: | Bad request - Empty report '403': description: | Forbidden '404': description: Cannot find the test controller '500': description: Internal server error components: schemas: Alarm: type: object description: The encoded alarm. The fields in the response will depend on the fields in the request properties: uuid: type: string example: a93baf31-8072-4315-b168-ddca1fa3fd9d timestamp: type: string example: 2021-01-27T17:11:55.542+01:00 alarmClass: type: string example: Default Alarm Class source: type: string example: BooleanWritable sourceState: type: string example: Offnormal priority: type: integer example: 255 message: type: string example: '{ok}' ackState: type: string example: Unacked ackBy: type: string example: admin ackDate: type: string example: 2021-01-27T17:16:45.542+01:00 id: type: string example: H0SN7gEBY9ZvVatAMC2GL Component: type: object description: The encoded component. The fields in the response will depend on the additonalfields in the request. Depending on the endpoints different fields will be encoded by default properties: name: type: string example: My$20Component displayName: type: string example: My Component slotPathOrd: type: string example: station:|slot:/Drivers/My$20Component link: type: string example: https://192.168.1.4:443/ord/station:|slot:/Drivers/My$20Component id: type: string example: F0SCYW7KHZVkyKmnRENuC description: type: string example: My component's description status: type: string example: '{ok}' enabled: type: boolean example: true descendants: type: array items: $ref: '#/components/schemas/Component' DeletedEvent: type: object description: The encoded Deleted Event. As the relations with the parent schedules are lost after the deletion, some data is lost properties: id: type: string example: "MyId" dataValue: type: string example: 0 status: type: string example: '{ok}' startTime: type: string example: "09:00:00+02:00" endTime: type: string example: "17:00:00+02:00" Fields: type: array items: type: string enum: - allRelations - allTags - description - displayName - enabled - facets - id - link - mnemonic - name - out - pointValue - slotPathOrd - status - '{tagId}' - '{relationId}' description: | List of the possible components fields to encode. Any missing field in the component will be skipped - allRelations: An array of all the component's relations - allTags: An array of all the component's tags - description: The component's description - displayName: The component's display name - enabled: The value of the "enabled" slot - facets: The value of the "facet" slot - id: The component's id (the value of the "id" slot or the value of the "b:id" tag) - link: A link to the component - mnemonic: The value of the "mnemonic" slot - name: The component's name - out: The value of the "out" slot (with the status if there is one) - pointValue: The value of the "out" slot (without the status) - slotPathOrd: The component's display slot path ord, prefixed with station:| - status: The component's status encoded to a String - {tagId}: the relation with the given id - {relationId}: the tag with the given id Depending on the endpoint and the component, some field will be added by default. - Hierarchy: The name, displayName, status, id and description will be encoded and if the component is an point, the pointValue, the status and the facets will also be encoded by default. -Asset: The name, displayName, status, value, enabled, id and description will be encoded History: type: object description: The encoded history. properties: id: type: string example: "/deviceName/componentName" timezone: type: string example: Europe/Paris (+1/+2) capacity: type: string example: Unlimited fullPolicy: type: string example: Roll interval: type: string example: 1 minute data: type: array items: $ref: '#/components/schemas/Record' Node: type: object description: The encoded node. required: [ displayName ] properties: id: type: string example: "MyNodeId" aspect: type: string example: "str" nodeDefinition: type: string example: "site" name: type: string example: "MyNodeName" displayName: type: string example: "MyNodeDisplayName" ascendants: type: array items: type: string nodeTags: type: array items: $ref: '#/components/schemas/NodeTag' NodeForUpdate: type: object description: The encoded node. required: [ id ] properties: id: type: string example: "MyNodeId" displayName: type: string example: "MyNodeDisplayName" ascendants: type: array items: type: string nodeTags: type: array items: $ref: '#/components/schemas/NodeTag' NodeTag: type: object description: The encoded node tag. required: [ tag, slotType, value ] properties: tag: type: string example: "b:myTag" slotType: type: string example: "baja:String" value: type: string example: "MyValue" Record: type: object description: The encoded record. properties: Timestamp: type: string example: 25-Jan-21 5:14 PM CET Trend Flags: type: integer example: 0 Status: type: string example: '{ok}' Value: type: string example: value RecurringEvent: type: object description: The encoded Single Event. properties: id: type: string example: "MyId" dataValue: type: string example: 0 status: type: string example: '{ok}' timeZone: type: string example: "Europe/Paris" startTime: type: string example: "09:00:00.000" endTime: type: string example: "17:00:00.000" day: type: string example: "monday" Schedule: type: object description: The encoded Schedule. properties: name: type: string example: My$20Schedule displayName: type: string example: My Schedule dataValue: type: string example: 0 status: type: string example: '{ok}' nextDataValue: type: string example: 0 nextStatusValue: type: string example: '{ok}' nextTime: type: string example: '2021-08-23T17:00:00+02:00' id: type: string example: "S0SdbW4sqJyrr51UOgfhb" description: type: string example: My schedule's description singleEvents: type: array items: $ref: '#/components/schemas/SingleEvent' recurringEvents: type: array items: $ref: '#/components/schemas/RecurringEvent' SingleEvent: type: object description: The encoded Single Event. properties: id: type: string example: "MyId" name: type: string example: My$20Single$20Event displayName: type: string example: My Single Event dataValue: type: string example: 0 status: type: string example: '{ok}' startDate: type: string description: the startDate in UTC example: "2021-08-23T07:00:00Z" endDate: type: string description: the endDate in UTC example: "2021-08-23T12:00:00Z" parameters: additionalFields: in: query name: additionalFields description: fields to encode required: false explode: true schema: $ref: '#/components/schemas/Fields' aggregatedData: name: aggregatedData in: query description: if set to true, the request will return aggregated data required: false schema: type: boolean default: true alarmAdditionalFields: in: query name: additionalFields description: alarmData fields to encode required: false explode: true schema: type: array items: type: string default: [ ] alarmLimit: name: limit in: query description: the maximum number of records to retrieve, this value must be smaller than the "maxAlarmCount" inside the ExploreServlet. required: false schema: type: integer default: maxAlarmCount inside the ExploreServlet delta: name: delta in: query description: the delta to apply on the query fetching the records required: false schema: type: boolean endDate: name: endDate in: query description: If the period is empty, the end of the period on which elements will be retrieved. The value must follow the ISO 8601 format required: false schema: type: string historyLimit: name: limit in: query description: the maximum number of records to retrieve, this value must be smaller than the "maxHistoryCount" inside the ExploreServlet. required: false schema: type: integer default: maxHistoryCount inside the ExploreServlet period: name: period in: query description: The period on which elements will be retrieved required: false schema: type: string enum: [ today, last24Hours, yesterday, weekToDate, lastWeek, last7Days, monthToDate, lastMonth, yearToDate, lastYear ] rollupInterval: name: rollupInterval in: query description: The rollup to apply on the query fetching the records. Must come with a valid rollupOperator value required: false schema: type: string enum: [ none, oneMin, fiveMin, fifteenMin, thirtyMin, hourly, daily, monthly, yearly ] rollupOperator: name: rollupOperator in: query description: The field that will be fetched in the data in addition to Timestamp and End Timestamp. Must come with a valid rollupInterval value required: false schema: type: string enum: [ avg, count, max, min, sum ] retrieveValues: name: retrieveValues in: query description: if set to true, the request will return the records associated to the history required: false schema: type: boolean default: false startDate: name: startDate in: query description: If the period is empty, the start of the period on which elements will be retrieved. The value must follow the ISO 8601 format required: false schema: type: string servers: # Added by API Auto Mocking Plugin - description: SwaggerHub API Auto Mocking url: https://virtserver.swaggerhub.com/BTIBDEV/Linksper/1.0.0