Iec 104 Template Controller
get
Authorizations
Path parameters
deviceIdstringRequired
Responses
200
OK
*/*
400
Bad Request
*/*
403
Forbidden
*/*
404
Not Found
*/*
409
Conflict
*/*
500
Internal Server Error
*/*
get
GET /api/protocols/iec104/templates/devices/{deviceId} HTTP/1.1
Host: inscada.cloud
Accept: */*
{
"creationDate": "2025-07-05T19:34:46.419Z",
"lastModifiedBy": "text",
"createdBy": "text",
"lastModifiedDate": "2025-07-05T19:34:46.419Z",
"id": "text",
"properties": "text",
"dsc": "text",
"name": "text",
"scanTime": 1,
"commonAddress": 1,
"scanType": "Periodic",
"controlPointOffset": 1
}
put
Authorizations
Path parameters
deviceIdstringRequired
Body
creationDatestring · date-timeRead-onlyOptional
lastModifiedBystringRead-onlyOptional
createdBystringRead-onlyOptional
lastModifiedDatestring · date-timeRead-onlyOptional
idstringOptional
propertiesstringOptional
dscstring · max: 255Optional
namestring · max: 100Required
scanTimeinteger · int32 · min: 100Optional
commonAddressinteger · int32Required
scanTypestring · enumRequiredPossible values:
controlPointOffsetinteger · int32Optional
Responses
204
No Content
400
Bad Request
*/*
403
Forbidden
*/*
404
Not Found
*/*
409
Conflict
*/*
500
Internal Server Error
*/*
put
PUT /api/protocols/iec104/templates/devices/{deviceId} HTTP/1.1
Host: inscada.cloud
Content-Type: application/json
Accept: */*
Content-Length: 136
{
"id": "text",
"properties": "text",
"dsc": "text",
"name": "text",
"scanTime": 1,
"commonAddress": 1,
"scanType": "Periodic",
"controlPointOffset": 1
}
No content
delete
Authorizations
Path parameters
deviceIdstringRequired
Responses
204
No Content
400
Bad Request
*/*
403
Forbidden
*/*
404
Not Found
*/*
409
Conflict
*/*
500
Internal Server Error
*/*
delete
DELETE /api/protocols/iec104/templates/devices/{deviceId} HTTP/1.1
Host: inscada.cloud
Accept: */*
No content
get
Authorizations
Path parameters
deviceIdstringRequired
frameIdstringRequired
Responses
200
OK
*/*
400
Bad Request
*/*
403
Forbidden
*/*
404
Not Found
*/*
409
Conflict
*/*
500
Internal Server Error
*/*
get
GET /api/protocols/iec104/templates/devices/{deviceId}/frames/{frameId} HTTP/1.1
Host: inscada.cloud
Accept: */*
{
"creationDate": "2025-07-05T19:34:46.419Z",
"lastModifiedBy": "text",
"createdBy": "text",
"lastModifiedDate": "2025-07-05T19:34:46.419Z",
"id": "text",
"deviceId": "text",
"dsc": "text",
"scanTimeFactor": 1,
"name": "text",
"isWritable": true,
"isReadable": true,
"minutesOffset": 1,
"type": "Single Point Information"
}
put
Authorizations
Path parameters
deviceIdstringRequired
frameIdstringRequired
Body
creationDatestring · date-timeRead-onlyOptional
lastModifiedBystringRead-onlyOptional
createdBystringRead-onlyOptional
lastModifiedDatestring · date-timeRead-onlyOptional
idstringOptional
deviceIdstringOptional
dscstring · max: 255Optional
scanTimeFactorinteger · int32Optional
namestring · max: 100Required
isWritablebooleanRequired
isReadablebooleanRequired
minutesOffsetinteger · int32Optional
typestring · enumRequiredPossible values:
Responses
204
No Content
400
Bad Request
*/*
403
Forbidden
*/*
404
Not Found
*/*
409
Conflict
*/*
500
Internal Server Error
*/*
put
PUT /api/protocols/iec104/templates/devices/{deviceId}/frames/{frameId} HTTP/1.1
Host: inscada.cloud
Content-Type: application/json
Accept: */*
Content-Length: 165
{
"id": "text",
"deviceId": "text",
"dsc": "text",
"scanTimeFactor": 1,
"name": "text",
"isWritable": true,
"isReadable": true,
"minutesOffset": 1,
"type": "Single Point Information"
}
No content
delete
Authorizations
Path parameters
deviceIdstringRequired
frameIdstringRequired
Responses
204
No Content
400
Bad Request
*/*
403
Forbidden
*/*
404
Not Found
*/*
409
Conflict
*/*
500
Internal Server Error
*/*
delete
DELETE /api/protocols/iec104/templates/devices/{deviceId}/frames/{frameId} HTTP/1.1
Host: inscada.cloud
Accept: */*
No content
get
Authorizations
Path parameters
deviceIdstringRequired
frameIdstringRequired
variableIdstringRequired
Responses
200
OK
*/*
400
Bad Request
*/*
403
Forbidden
*/*
404
Not Found
*/*
409
Conflict
*/*
500
Internal Server Error
*/*
get
GET /api/protocols/iec104/templates/devices/{deviceId}/frames/{frameId}/variables/{variableId} HTTP/1.1
Host: inscada.cloud
Accept: */*
{
"creationDate": "2025-07-05T19:34:46.419Z",
"lastModifiedBy": "text",
"createdBy": "text",
"lastModifiedDate": "2025-07-05T19:34:46.419Z",
"id": "text",
"engFullScale": 1,
"logMaxValue": 1,
"fractionalDigitCount": 1,
"isPulseOn": true,
"logExpressionCode": "text",
"frameId": "text",
"valueExpressionType": "NONE",
"logMinValue": 1,
"rawZeroScale": 1,
"valueExpressionCode": "text",
"isActive": true,
"code": "text",
"valueExpressionId": "text",
"setMaxValue": 1,
"logType": "No Log",
"setMinValue": 1,
"keepLastValues": true,
"logThreshold": 1,
"isPulseOff": true,
"logPeriod": 1,
"pulseOffDuration": 1,
"pulseOnDuration": 1,
"engZeroScale": 1,
"dsc": "text",
"unit": "text",
"logExpressionId": "text",
"rawFullScale": 1,
"name": "text",
"writeAddress": 1,
"writeIoaAddress1": 1,
"readIoaAddress1": 1,
"readIoaAddress2": 1,
"useIoaAddresses": true,
"writeIoaAddress3": 1,
"readIoaAddress3": 1,
"readAddress": 1,
"writeIoaAddress2": 1,
"deviceId": "text"
}
put
Authorizations
Path parameters
deviceIdstringRequired
frameIdstringRequired
variableIdstringRequired
Body
creationDatestring · date-timeRead-onlyOptional
lastModifiedBystringRead-onlyOptional
createdBystringRead-onlyOptional
lastModifiedDatestring · date-timeRead-onlyOptional
idstringOptional
engFullScalenumber · doubleOptional
logMaxValuenumber · doubleOptional
fractionalDigitCountinteger · int32Optional
isPulseOnbooleanRequired
logExpressionCodestring · max: 4000Optional
frameIdstringOptional
valueExpressionTypestring · enumOptionalPossible values:
logMinValuenumber · doubleOptional
rawZeroScalenumber · doubleOptional
valueExpressionCodestring · max: 4000Optional
isActivebooleanRequired
codestring · max: 20Optional
valueExpressionIdstringOptional
setMaxValuenumber · doubleOptional
logTypestring · enumOptionalPossible values:
setMinValuenumber · doubleOptional
keepLastValuesbooleanRequired
logThresholdnumber · doubleOptional
isPulseOffbooleanRequired
logPeriodinteger · int32 · min: 1Optional
pulseOffDurationinteger · int32Optional
pulseOnDurationinteger · int32Optional
engZeroScalenumber · doubleOptional
dscstring · max: 255Optional
unitstringOptional
logExpressionIdstringOptional
rawFullScalenumber · doubleOptional
namestring · max: 100Required
writeAddressinteger · int32Optional
writeIoaAddress1integer · int32 · max: 255Optional
readIoaAddress1integer · int32 · max: 255Optional
readIoaAddress2integer · int32 · max: 255Optional
useIoaAddressesbooleanRequired
writeIoaAddress3integer · int32 · max: 255Optional
readIoaAddress3integer · int32 · max: 255Optional
readAddressinteger · int32Optional
writeIoaAddress2integer · int32 · max: 255Optional
deviceIdstringOptional
Responses
204
No Content
400
Bad Request
*/*
403
Forbidden
*/*
404
Not Found
*/*
409
Conflict
*/*
500
Internal Server Error
*/*
put
PUT /api/protocols/iec104/templates/devices/{deviceId}/frames/{frameId}/variables/{variableId} HTTP/1.1
Host: inscada.cloud
Content-Type: application/json
Accept: */*
Content-Length: 740
{
"id": "text",
"engFullScale": 1,
"logMaxValue": 1,
"fractionalDigitCount": 1,
"isPulseOn": true,
"logExpressionCode": "text",
"frameId": "text",
"valueExpressionType": "NONE",
"logMinValue": 1,
"rawZeroScale": 1,
"valueExpressionCode": "text",
"isActive": true,
"code": "text",
"valueExpressionId": "text",
"setMaxValue": 1,
"logType": "No Log",
"setMinValue": 1,
"keepLastValues": true,
"logThreshold": 1,
"isPulseOff": true,
"logPeriod": 1,
"pulseOffDuration": 1,
"pulseOnDuration": 1,
"engZeroScale": 1,
"dsc": "text",
"unit": "text",
"logExpressionId": "text",
"rawFullScale": 1,
"name": "text",
"writeAddress": 1,
"writeIoaAddress1": 1,
"readIoaAddress1": 1,
"readIoaAddress2": 1,
"useIoaAddresses": true,
"writeIoaAddress3": 1,
"readIoaAddress3": 1,
"readAddress": 1,
"writeIoaAddress2": 1,
"deviceId": "text"
}
No content
delete
Authorizations
Path parameters
deviceIdstringRequired
frameIdstringRequired
variableIdstringRequired
Responses
204
No Content
400
Bad Request
*/*
403
Forbidden
*/*
404
Not Found
*/*
409
Conflict
*/*
500
Internal Server Error
*/*
delete
DELETE /api/protocols/iec104/templates/devices/{deviceId}/frames/{frameId}/variables/{variableId} HTTP/1.1
Host: inscada.cloud
Accept: */*
No content
get
Authorizations
Responses
200
OK
*/*
400
Bad Request
*/*
403
Forbidden
*/*
404
Not Found
*/*
409
Conflict
*/*
500
Internal Server Error
*/*
get
GET /api/protocols/iec104/templates/devices HTTP/1.1
Host: inscada.cloud
Accept: */*
[
{
"creationDate": "2025-07-05T19:34:46.419Z",
"lastModifiedBy": "text",
"createdBy": "text",
"lastModifiedDate": "2025-07-05T19:34:46.419Z",
"id": "text",
"properties": "text",
"dsc": "text",
"name": "text",
"scanTime": 1,
"commonAddress": 1,
"scanType": "Periodic",
"controlPointOffset": 1
}
]
post
Authorizations
Body
creationDatestring · date-timeRead-onlyOptional
lastModifiedBystringRead-onlyOptional
createdBystringRead-onlyOptional
lastModifiedDatestring · date-timeRead-onlyOptional
idstringOptional
propertiesstringOptional
dscstring · max: 255Optional
namestring · max: 100Required
scanTimeinteger · int32 · min: 100Optional
commonAddressinteger · int32Required
scanTypestring · enumRequiredPossible values:
controlPointOffsetinteger · int32Optional
Responses
200
OK
*/*
400
Bad Request
*/*
403
Forbidden
*/*
404
Not Found
*/*
409
Conflict
*/*
500
Internal Server Error
*/*
post
POST /api/protocols/iec104/templates/devices HTTP/1.1
Host: inscada.cloud
Content-Type: application/json
Accept: */*
Content-Length: 136
{
"id": "text",
"properties": "text",
"dsc": "text",
"name": "text",
"scanTime": 1,
"commonAddress": 1,
"scanType": "Periodic",
"controlPointOffset": 1
}
{
"creationDate": "2025-07-05T19:34:46.419Z",
"lastModifiedBy": "text",
"createdBy": "text",
"lastModifiedDate": "2025-07-05T19:34:46.419Z",
"id": "text",
"properties": "text",
"dsc": "text",
"name": "text",
"scanTime": 1,
"commonAddress": 1,
"scanType": "Periodic",
"controlPointOffset": 1
}
get
Authorizations
Path parameters
deviceIdstringRequired
Responses
200
OK
*/*
400
Bad Request
*/*
403
Forbidden
*/*
404
Not Found
*/*
409
Conflict
*/*
500
Internal Server Error
*/*
get
GET /api/protocols/iec104/templates/devices/{deviceId}/frames HTTP/1.1
Host: inscada.cloud
Accept: */*
[
{
"creationDate": "2025-07-05T19:34:46.419Z",
"lastModifiedBy": "text",
"createdBy": "text",
"lastModifiedDate": "2025-07-05T19:34:46.419Z",
"id": "text",
"deviceId": "text",
"dsc": "text",
"scanTimeFactor": 1,
"name": "text",
"isWritable": true,
"isReadable": true,
"minutesOffset": 1,
"type": "Single Point Information"
}
]
post
Authorizations
Path parameters
deviceIdstringRequired
Body
creationDatestring · date-timeRead-onlyOptional
lastModifiedBystringRead-onlyOptional
createdBystringRead-onlyOptional
lastModifiedDatestring · date-timeRead-onlyOptional
idstringOptional
deviceIdstringOptional
dscstring · max: 255Optional
scanTimeFactorinteger · int32Optional
namestring · max: 100Required
isWritablebooleanRequired
isReadablebooleanRequired
minutesOffsetinteger · int32Optional
typestring · enumRequiredPossible values:
Responses
200
OK
*/*
400
Bad Request
*/*
403
Forbidden
*/*
404
Not Found
*/*
409
Conflict
*/*
500
Internal Server Error
*/*
post
POST /api/protocols/iec104/templates/devices/{deviceId}/frames HTTP/1.1
Host: inscada.cloud
Content-Type: application/json
Accept: */*
Content-Length: 165
{
"id": "text",
"deviceId": "text",
"dsc": "text",
"scanTimeFactor": 1,
"name": "text",
"isWritable": true,
"isReadable": true,
"minutesOffset": 1,
"type": "Single Point Information"
}
{
"creationDate": "2025-07-05T19:34:46.419Z",
"lastModifiedBy": "text",
"createdBy": "text",
"lastModifiedDate": "2025-07-05T19:34:46.419Z",
"id": "text",
"deviceId": "text",
"dsc": "text",
"scanTimeFactor": 1,
"name": "text",
"isWritable": true,
"isReadable": true,
"minutesOffset": 1,
"type": "Single Point Information"
}
get
Authorizations
Path parameters
deviceIdstringRequired
frameIdstringRequired
Responses
200
OK
*/*
400
Bad Request
*/*
403
Forbidden
*/*
404
Not Found
*/*
409
Conflict
*/*
500
Internal Server Error
*/*
get
GET /api/protocols/iec104/templates/devices/{deviceId}/frames/{frameId}/variables HTTP/1.1
Host: inscada.cloud
Accept: */*
[
{
"creationDate": "2025-07-05T19:34:46.419Z",
"lastModifiedBy": "text",
"createdBy": "text",
"lastModifiedDate": "2025-07-05T19:34:46.419Z",
"id": "text",
"engFullScale": 1,
"logMaxValue": 1,
"fractionalDigitCount": 1,
"isPulseOn": true,
"logExpressionCode": "text",
"frameId": "text",
"valueExpressionType": "NONE",
"logMinValue": 1,
"rawZeroScale": 1,
"valueExpressionCode": "text",
"isActive": true,
"code": "text",
"valueExpressionId": "text",
"setMaxValue": 1,
"logType": "No Log",
"setMinValue": 1,
"keepLastValues": true,
"logThreshold": 1,
"isPulseOff": true,
"logPeriod": 1,
"pulseOffDuration": 1,
"pulseOnDuration": 1,
"engZeroScale": 1,
"dsc": "text",
"unit": "text",
"logExpressionId": "text",
"rawFullScale": 1,
"name": "text",
"writeAddress": 1,
"writeIoaAddress1": 1,
"readIoaAddress1": 1,
"readIoaAddress2": 1,
"useIoaAddresses": true,
"writeIoaAddress3": 1,
"readIoaAddress3": 1,
"readAddress": 1,
"writeIoaAddress2": 1,
"deviceId": "text"
}
]
post
Authorizations
Path parameters
deviceIdstringRequired
frameIdstringRequired
Body
creationDatestring · date-timeRead-onlyOptional
lastModifiedBystringRead-onlyOptional
createdBystringRead-onlyOptional
lastModifiedDatestring · date-timeRead-onlyOptional
idstringOptional
engFullScalenumber · doubleOptional
logMaxValuenumber · doubleOptional
fractionalDigitCountinteger · int32Optional
isPulseOnbooleanRequired
logExpressionCodestring · max: 4000Optional
frameIdstringOptional
valueExpressionTypestring · enumOptionalPossible values:
logMinValuenumber · doubleOptional
rawZeroScalenumber · doubleOptional
valueExpressionCodestring · max: 4000Optional
isActivebooleanRequired
codestring · max: 20Optional
valueExpressionIdstringOptional
setMaxValuenumber · doubleOptional
logTypestring · enumOptionalPossible values:
setMinValuenumber · doubleOptional
keepLastValuesbooleanRequired
logThresholdnumber · doubleOptional
isPulseOffbooleanRequired
logPeriodinteger · int32 · min: 1Optional
pulseOffDurationinteger · int32Optional
pulseOnDurationinteger · int32Optional
engZeroScalenumber · doubleOptional
dscstring · max: 255Optional
unitstringOptional
logExpressionIdstringOptional
rawFullScalenumber · doubleOptional
namestring · max: 100Required
writeAddressinteger · int32Optional
writeIoaAddress1integer · int32 · max: 255Optional
readIoaAddress1integer · int32 · max: 255Optional
readIoaAddress2integer · int32 · max: 255Optional
useIoaAddressesbooleanRequired
writeIoaAddress3integer · int32 · max: 255Optional
readIoaAddress3integer · int32 · max: 255Optional
readAddressinteger · int32Optional
writeIoaAddress2integer · int32 · max: 255Optional
deviceIdstringOptional
Responses
200
OK
*/*
400
Bad Request
*/*
403
Forbidden
*/*
404
Not Found
*/*
409
Conflict
*/*
500
Internal Server Error
*/*
post
POST /api/protocols/iec104/templates/devices/{deviceId}/frames/{frameId}/variables HTTP/1.1
Host: inscada.cloud
Content-Type: application/json
Accept: */*
Content-Length: 740
{
"id": "text",
"engFullScale": 1,
"logMaxValue": 1,
"fractionalDigitCount": 1,
"isPulseOn": true,
"logExpressionCode": "text",
"frameId": "text",
"valueExpressionType": "NONE",
"logMinValue": 1,
"rawZeroScale": 1,
"valueExpressionCode": "text",
"isActive": true,
"code": "text",
"valueExpressionId": "text",
"setMaxValue": 1,
"logType": "No Log",
"setMinValue": 1,
"keepLastValues": true,
"logThreshold": 1,
"isPulseOff": true,
"logPeriod": 1,
"pulseOffDuration": 1,
"pulseOnDuration": 1,
"engZeroScale": 1,
"dsc": "text",
"unit": "text",
"logExpressionId": "text",
"rawFullScale": 1,
"name": "text",
"writeAddress": 1,
"writeIoaAddress1": 1,
"readIoaAddress1": 1,
"readIoaAddress2": 1,
"useIoaAddresses": true,
"writeIoaAddress3": 1,
"readIoaAddress3": 1,
"readAddress": 1,
"writeIoaAddress2": 1,
"deviceId": "text"
}
{
"creationDate": "2025-07-05T19:34:46.419Z",
"lastModifiedBy": "text",
"createdBy": "text",
"lastModifiedDate": "2025-07-05T19:34:46.419Z",
"id": "text",
"engFullScale": 1,
"logMaxValue": 1,
"fractionalDigitCount": 1,
"isPulseOn": true,
"logExpressionCode": "text",
"frameId": "text",
"valueExpressionType": "NONE",
"logMinValue": 1,
"rawZeroScale": 1,
"valueExpressionCode": "text",
"isActive": true,
"code": "text",
"valueExpressionId": "text",
"setMaxValue": 1,
"logType": "No Log",
"setMinValue": 1,
"keepLastValues": true,
"logThreshold": 1,
"isPulseOff": true,
"logPeriod": 1,
"pulseOffDuration": 1,
"pulseOnDuration": 1,
"engZeroScale": 1,
"dsc": "text",
"unit": "text",
"logExpressionId": "text",
"rawFullScale": 1,
"name": "text",
"writeAddress": 1,
"writeIoaAddress1": 1,
"readIoaAddress1": 1,
"readIoaAddress2": 1,
"useIoaAddresses": true,
"writeIoaAddress3": 1,
"readIoaAddress3": 1,
"readAddress": 1,
"writeIoaAddress2": 1,
"deviceId": "text"
}