@itentialopensource/adapter-meraki 1.0.4 → 1.2.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -18,6 +18,11 @@
18
18
  "minimum": 1,
19
19
  "maximum": 65535
20
20
  },
21
+ "choosepath": {
22
+ "type": "string",
23
+ "description": "choose the path to use -- requires entityPath choices",
24
+ "default": ""
25
+ },
21
26
  "base_path": {
22
27
  "type": "string",
23
28
  "description": "a base path that is consistent across api calls",
@@ -101,6 +106,9 @@
101
106
  },
102
107
  "devicebroker": {
103
108
  "$ref": "#/definitions/devicebroker"
109
+ },
110
+ "cache": {
111
+ "$ref": "#/definitions/cache"
104
112
  }
105
113
  },
106
114
  "required": [
@@ -122,7 +130,8 @@
122
130
  "static_token",
123
131
  "jwt_token",
124
132
  "request_token",
125
- "no_authentication"
133
+ "no_authentication",
134
+ "multi_step_authentication"
126
135
  ]
127
136
  },
128
137
  "username": {
@@ -255,6 +264,74 @@
255
264
  "type": "string",
256
265
  "description": "The grant type for OAuth requests - can also provide in schema",
257
266
  "default": ""
267
+ },
268
+ "sensitive": {
269
+ "type": "array",
270
+ "description": "List of sensitive keys to search and hide values from being logged",
271
+ "default": [],
272
+ "items": {
273
+ "type": "string"
274
+ }
275
+ },
276
+ "sso": {
277
+ "type": "object",
278
+ "properties": {
279
+ "protocol": {
280
+ "type": "string",
281
+ "description": "the protocol to request token from system",
282
+ "default": "",
283
+ "enum": [
284
+ "http",
285
+ "https",
286
+ ""
287
+ ]
288
+ },
289
+ "host": {
290
+ "type": "string",
291
+ "description": "hostname of the authentication system",
292
+ "default": "",
293
+ "examples": [
294
+ "systemx.customer.com"
295
+ ]
296
+ },
297
+ "port": {
298
+ "type": "integer",
299
+ "description": "port on which to connect to the authentication system",
300
+ "default": 0,
301
+ "minimum": 0,
302
+ "maximum": 65535
303
+ }
304
+ }
305
+ },
306
+ "multiStepAuthCalls": {
307
+ "type": "array",
308
+ "items": {
309
+ "type": "object",
310
+ "properties": {
311
+ "name": {
312
+ "type": "string",
313
+ "description": "Id of the step call",
314
+ "examples": [
315
+ "getAccessToken"
316
+ ]
317
+ },
318
+ "requestFields": {
319
+ "type": "object",
320
+ "description": "The fields set in step request"
321
+ },
322
+ "responseFields": {
323
+ "type": "object",
324
+ "description": "The fields from the step result"
325
+ },
326
+ "successfullResponseCode": {
327
+ "type": "integer",
328
+ "description": "Expected response code for given step, if not set any successfull http response is accepted",
329
+ "examples": [
330
+ 200
331
+ ]
332
+ }
333
+ }
334
+ }
258
335
  }
259
336
  },
260
337
  "required": [
@@ -357,7 +434,13 @@
357
434
  },
358
435
  "query_object": {
359
436
  "type": "object",
360
- "description": "Query object { device: xxxxx } to be placed into the healthcheck, will be converted to query string by the adapter"
437
+ "description": "Query object { device: xxxxx } to be placed into the healthcheck, will be converted to query string by the adapter",
438
+ "default": {}
439
+ },
440
+ "addlHeaders": {
441
+ "type": "object",
442
+ "description": "headers that will be appended to the headers for the call",
443
+ "default": {}
361
444
  }
362
445
  },
363
446
  "required": [
@@ -437,6 +520,7 @@
437
520
  "priorities": {
438
521
  "type": "array",
439
522
  "description": "define your priorities here",
523
+ "default": [],
440
524
  "items": {
441
525
  "type": "object",
442
526
  "properties": {
@@ -507,6 +591,7 @@
507
591
  "failover_codes": {
508
592
  "type": "array",
509
593
  "description": "An array of codes where it is ok to try another method",
594
+ "default": [],
510
595
  "items": {
511
596
  "type": "integer"
512
597
  }
@@ -524,19 +609,23 @@
524
609
  "properties": {
525
610
  "payload": {
526
611
  "type": "object",
527
- "description": "payload fields that will be appended to the provided payload (excluding GET calls)"
612
+ "description": "payload fields that will be appended to the provided payload (excluding GET calls)",
613
+ "default": {}
528
614
  },
529
615
  "uriOptions": {
530
616
  "type": "object",
531
- "description": "options that will be appended to all GET calls"
617
+ "description": "options that will be appended to all GET calls",
618
+ "default": {}
532
619
  },
533
620
  "addlHeaders": {
534
621
  "type": "object",
535
- "description": "headers that will be appended to the headers for the call"
622
+ "description": "headers that will be appended to the headers for the call",
623
+ "default": {}
536
624
  },
537
625
  "authData": {
538
626
  "type": "object",
539
- "description": "authentication data that will be appended to the payload for authentication calls"
627
+ "description": "authentication data that will be appended to the payload for authentication calls",
628
+ "default": {}
540
629
  }
541
630
  }
542
631
  },
@@ -851,6 +940,7 @@
851
940
  "type": "array",
852
941
  "description": "Broker call(s) to getDevice",
853
942
  "items": {
943
+ "type": "object",
854
944
  "properties": {
855
945
  "path": {
856
946
  "type": "string",
@@ -866,21 +956,30 @@
866
956
  "type": "object",
867
957
  "description": "The json object with query parameters of the call to getDevice",
868
958
  "additionalProperties": {
869
- "type": "string"
959
+ "type": [
960
+ "string",
961
+ "number"
962
+ ]
870
963
  }
871
964
  },
872
965
  "body": {
873
966
  "type": "object",
874
967
  "description": "The json object with body of the call to getDevice",
875
968
  "additionalProperties": {
876
- "type": "string"
969
+ "type": [
970
+ "string",
971
+ "number"
972
+ ]
877
973
  }
878
974
  },
879
975
  "headers": {
880
976
  "type": "object",
881
977
  "description": "The json object with headers of the call to getDevice",
882
978
  "additionalProperties": {
883
- "type": "string"
979
+ "type": [
980
+ "string",
981
+ "number"
982
+ ]
884
983
  }
885
984
  },
886
985
  "handleFailure": {
@@ -896,7 +995,10 @@
896
995
  "type": "object",
897
996
  "description": "The json object with response fields of the call to getDevice",
898
997
  "additionalProperties": {
899
- "type": "string"
998
+ "type": [
999
+ "string",
1000
+ "number"
1001
+ ]
900
1002
  },
901
1003
  "properties": {}
902
1004
  },
@@ -909,7 +1011,10 @@
909
1011
  "type": "object",
910
1012
  "description": "The json object with response fields of the call to getDevice",
911
1013
  "additionalProperties": {
912
- "type": "string"
1014
+ "type": [
1015
+ "string",
1016
+ "number"
1017
+ ]
913
1018
  },
914
1019
  "properties": {
915
1020
  "name": {
@@ -946,6 +1051,7 @@
946
1051
  "type": "array",
947
1052
  "description": "Broker call(s) to getDevicesFiltered",
948
1053
  "items": {
1054
+ "type": "object",
949
1055
  "properties": {
950
1056
  "path": {
951
1057
  "type": "string",
@@ -957,25 +1063,66 @@
957
1063
  "description": "The method of the call to getDevicesFiltered",
958
1064
  "default": "GET"
959
1065
  },
1066
+ "pagination": {
1067
+ "type": "object",
1068
+ "description": "todo",
1069
+ "properties": {
1070
+ "offsetVar": {
1071
+ "type": "string",
1072
+ "description": "Name of variable that defines how to go to next set of results"
1073
+ },
1074
+ "limitVar": {
1075
+ "type": "string",
1076
+ "description": "Name of variable that defines the max results returned in a request"
1077
+ },
1078
+ "incrementBy": {
1079
+ "type": "string",
1080
+ "enum": [
1081
+ "limit",
1082
+ "page"
1083
+ ],
1084
+ "description": "How to incremenet offset. Default limit",
1085
+ "default": "limit"
1086
+ },
1087
+ "requestLocation": {
1088
+ "type": "string",
1089
+ "enum": [
1090
+ "query",
1091
+ "body"
1092
+ ],
1093
+ "description": "Where in request the pagination data goes",
1094
+ "default": "query"
1095
+ }
1096
+ }
1097
+ },
960
1098
  "query": {
961
1099
  "type": "object",
962
1100
  "description": "The json object with query parameters of the call to getDevicesFiltered",
963
1101
  "additionalProperties": {
964
- "type": "string"
1102
+ "type": [
1103
+ "string",
1104
+ "number"
1105
+ ]
965
1106
  }
966
1107
  },
967
1108
  "body": {
968
1109
  "type": "object",
969
1110
  "description": "The json object with body of the call to getDevicesFiltered",
970
1111
  "additionalProperties": {
971
- "type": "string"
1112
+ "type": [
1113
+ "string",
1114
+ "number"
1115
+ ]
972
1116
  }
973
1117
  },
974
1118
  "headers": {
975
1119
  "type": "object",
976
1120
  "description": "The json object with headers of the call to getDevicesFiltered",
977
1121
  "additionalProperties": {
978
- "type": "string"
1122
+ "type": [
1123
+ "string",
1124
+ "number"
1125
+ ]
979
1126
  }
980
1127
  },
981
1128
  "handleFailure": {
@@ -991,7 +1138,10 @@
991
1138
  "type": "object",
992
1139
  "description": "The json object with response fields of the call to getDevice",
993
1140
  "additionalProperties": {
994
- "type": "string"
1141
+ "type": [
1142
+ "string",
1143
+ "number"
1144
+ ]
995
1145
  },
996
1146
  "properties": {}
997
1147
  },
@@ -1004,7 +1154,10 @@
1004
1154
  "type": "object",
1005
1155
  "description": "The json object with response fields of the call to getDevicesFiltered",
1006
1156
  "additionalProperties": {
1007
- "type": "string"
1157
+ "type": [
1158
+ "string",
1159
+ "number"
1160
+ ]
1008
1161
  },
1009
1162
  "properties": {
1010
1163
  "name": {
@@ -1041,6 +1194,7 @@
1041
1194
  "type": "array",
1042
1195
  "description": "Broker call(s) to determine if the device isAlive",
1043
1196
  "items": {
1197
+ "type": "object",
1044
1198
  "properties": {
1045
1199
  "path": {
1046
1200
  "type": "string",
@@ -1056,21 +1210,30 @@
1056
1210
  "type": "object",
1057
1211
  "description": "The json object with query parameters of the call to isAlive",
1058
1212
  "additionalProperties": {
1059
- "type": "string"
1213
+ "type": [
1214
+ "string",
1215
+ "number"
1216
+ ]
1060
1217
  }
1061
1218
  },
1062
1219
  "body": {
1063
1220
  "type": "object",
1064
1221
  "description": "The json object with body of the call to isAlive",
1065
1222
  "additionalProperties": {
1066
- "type": "string"
1223
+ "type": [
1224
+ "string",
1225
+ "number"
1226
+ ]
1067
1227
  }
1068
1228
  },
1069
1229
  "headers": {
1070
1230
  "type": "object",
1071
1231
  "description": "The json object with headers of the call to isAlive",
1072
1232
  "additionalProperties": {
1073
- "type": "string"
1233
+ "type": [
1234
+ "string",
1235
+ "number"
1236
+ ]
1074
1237
  }
1075
1238
  },
1076
1239
  "handleFailure": {
@@ -1086,7 +1249,10 @@
1086
1249
  "type": "object",
1087
1250
  "description": "The json object with response fields of the call to getDevice",
1088
1251
  "additionalProperties": {
1089
- "type": "string"
1252
+ "type": [
1253
+ "string",
1254
+ "number"
1255
+ ]
1090
1256
  },
1091
1257
  "properties": {}
1092
1258
  },
@@ -1099,7 +1265,10 @@
1099
1265
  "type": "object",
1100
1266
  "description": "The json object with response fields of the call to isAlive",
1101
1267
  "additionalProperties": {
1102
- "type": "string"
1268
+ "type": [
1269
+ "string",
1270
+ "number"
1271
+ ]
1103
1272
  },
1104
1273
  "properties": {
1105
1274
  "status": {
@@ -1121,6 +1290,7 @@
1121
1290
  "type": "array",
1122
1291
  "description": "Broker call(s) to getConfig",
1123
1292
  "items": {
1293
+ "type": "object",
1124
1294
  "properties": {
1125
1295
  "path": {
1126
1296
  "type": "string",
@@ -1136,21 +1306,30 @@
1136
1306
  "type": "object",
1137
1307
  "description": "The json object with query parameters of the call to getConfig",
1138
1308
  "additionalProperties": {
1139
- "type": "string"
1309
+ "type": [
1310
+ "string",
1311
+ "number"
1312
+ ]
1140
1313
  }
1141
1314
  },
1142
1315
  "body": {
1143
1316
  "type": "object",
1144
1317
  "description": "The json object with body of the call to getConfig",
1145
1318
  "additionalProperties": {
1146
- "type": "string"
1319
+ "type": [
1320
+ "string",
1321
+ "number"
1322
+ ]
1147
1323
  }
1148
1324
  },
1149
1325
  "headers": {
1150
1326
  "type": "object",
1151
1327
  "description": "The json object with headers of the call to getConfig",
1152
1328
  "additionalProperties": {
1153
- "type": "string"
1329
+ "type": [
1330
+ "string",
1331
+ "number"
1332
+ ]
1154
1333
  }
1155
1334
  },
1156
1335
  "handleFailure": {
@@ -1166,7 +1345,10 @@
1166
1345
  "type": "object",
1167
1346
  "description": "The json object with response fields of the call to getDevice",
1168
1347
  "additionalProperties": {
1169
- "type": "string"
1348
+ "type": [
1349
+ "string",
1350
+ "number"
1351
+ ]
1170
1352
  },
1171
1353
  "properties": {}
1172
1354
  },
@@ -1179,7 +1361,10 @@
1179
1361
  "type": "object",
1180
1362
  "description": "The json object with response fields of the call to getConfig",
1181
1363
  "additionalProperties": {
1182
- "type": "string"
1364
+ "type": [
1365
+ "string",
1366
+ "number"
1367
+ ]
1183
1368
  },
1184
1369
  "properties": {}
1185
1370
  }
@@ -1190,6 +1375,7 @@
1190
1375
  "type": "array",
1191
1376
  "description": "Broker call(s) to getCount",
1192
1377
  "items": {
1378
+ "type": "object",
1193
1379
  "properties": {
1194
1380
  "path": {
1195
1381
  "type": "string",
@@ -1205,21 +1391,30 @@
1205
1391
  "type": "object",
1206
1392
  "description": "The json object with query parameters of the call to getCount",
1207
1393
  "additionalProperties": {
1208
- "type": "string"
1394
+ "type": [
1395
+ "string",
1396
+ "number"
1397
+ ]
1209
1398
  }
1210
1399
  },
1211
1400
  "body": {
1212
1401
  "type": "object",
1213
1402
  "description": "The json object with body of the call to getCount",
1214
1403
  "additionalProperties": {
1215
- "type": "string"
1404
+ "type": [
1405
+ "string",
1406
+ "number"
1407
+ ]
1216
1408
  }
1217
1409
  },
1218
1410
  "headers": {
1219
1411
  "type": "object",
1220
1412
  "description": "The json object with headers of the call to getCount",
1221
1413
  "additionalProperties": {
1222
- "type": "string"
1414
+ "type": [
1415
+ "string",
1416
+ "number"
1417
+ ]
1223
1418
  }
1224
1419
  },
1225
1420
  "handleFailure": {
@@ -1235,7 +1430,10 @@
1235
1430
  "type": "object",
1236
1431
  "description": "The json object with response fields of the call to getDevice",
1237
1432
  "additionalProperties": {
1238
- "type": "string"
1433
+ "type": [
1434
+ "string",
1435
+ "number"
1436
+ ]
1239
1437
  },
1240
1438
  "properties": {}
1241
1439
  },
@@ -1248,7 +1446,10 @@
1248
1446
  "type": "object",
1249
1447
  "description": "The json object with response fields of the call to getConfig",
1250
1448
  "additionalProperties": {
1251
- "type": "string"
1449
+ "type": [
1450
+ "string",
1451
+ "number"
1452
+ ]
1252
1453
  },
1253
1454
  "properties": {}
1254
1455
  }
@@ -1256,6 +1457,196 @@
1256
1457
  }
1257
1458
  }
1258
1459
  }
1460
+ },
1461
+ "cache": {
1462
+ "type": "object",
1463
+ "properties": {
1464
+ "enabled": {
1465
+ "type": "boolean",
1466
+ "description": "Whether or not cache is enabled for adapter",
1467
+ "default": false
1468
+ },
1469
+ "entities": {
1470
+ "type": "array",
1471
+ "description": "Information for the cached entities",
1472
+ "items": {
1473
+ "type": "object",
1474
+ "properties": {
1475
+ "entityType": {
1476
+ "type": "string",
1477
+ "description": "The name of the entity - should match adapter entity configuration or a broker (e.g. Device)",
1478
+ "default": ""
1479
+ },
1480
+ "frequency": {
1481
+ "type": "integer",
1482
+ "description": "how long (in minutes) we wait to re-populate the cache",
1483
+ "default": 1440,
1484
+ "maximum": 10080
1485
+ },
1486
+ "flushOnFail": {
1487
+ "type": "boolean",
1488
+ "description": "Whether to clear the cache we have if the populate failed",
1489
+ "default": false
1490
+ },
1491
+ "limit": {
1492
+ "type": "integer",
1493
+ "description": "maximum number of items to keep in cache",
1494
+ "default": 1000
1495
+ },
1496
+ "retryAttempts": {
1497
+ "type": "integer",
1498
+ "description": "number of times to retry the populate call before failure",
1499
+ "default": 5
1500
+ },
1501
+ "sort": {
1502
+ "type": "boolean",
1503
+ "description": "whether to sort the data or not",
1504
+ "default": true
1505
+ },
1506
+ "populate": {
1507
+ "type": "array",
1508
+ "description": "Information for the call(s) used to populate the cache",
1509
+ "items": {
1510
+ "type": "object",
1511
+ "properties": {
1512
+ "path": {
1513
+ "type": "string",
1514
+ "description": "The fully qualified path of the call to getDevice (e.g. /rest/api/device/{deviceid})",
1515
+ "default": ""
1516
+ },
1517
+ "method": {
1518
+ "type": "string",
1519
+ "description": "The method of the call to getDevice",
1520
+ "default": "GET"
1521
+ },
1522
+ "pagination": {
1523
+ "type": "object",
1524
+ "description": "todo",
1525
+ "properties": {
1526
+ "offsetVar": {
1527
+ "type": "string",
1528
+ "description": "Name of variable that defines how to go to next set of results"
1529
+ },
1530
+ "limitVar": {
1531
+ "type": "string",
1532
+ "description": "Name of variable that defines the max results returned in a request"
1533
+ },
1534
+ "incrementBy": {
1535
+ "type": "string",
1536
+ "enum": [
1537
+ "limit",
1538
+ "page"
1539
+ ],
1540
+ "description": "How to incremenet offset. Default limit",
1541
+ "default": "limit"
1542
+ },
1543
+ "requestLocation": {
1544
+ "type": "string",
1545
+ "enum": [
1546
+ "query",
1547
+ "body"
1548
+ ],
1549
+ "description": "Where in request the pagination data goes",
1550
+ "default": "query"
1551
+ }
1552
+ }
1553
+ },
1554
+ "query": {
1555
+ "type": "object",
1556
+ "description": "The json object with query parameters of the call to getDevice",
1557
+ "additionalProperties": {
1558
+ "type": [
1559
+ "string",
1560
+ "number"
1561
+ ]
1562
+ }
1563
+ },
1564
+ "body": {
1565
+ "type": "object",
1566
+ "description": "The json object with body of the call to getDevice",
1567
+ "additionalProperties": {
1568
+ "type": [
1569
+ "string",
1570
+ "number"
1571
+ ]
1572
+ }
1573
+ },
1574
+ "headers": {
1575
+ "type": "object",
1576
+ "description": "The json object with headers of the call to getDevice",
1577
+ "additionalProperties": {
1578
+ "type": [
1579
+ "string",
1580
+ "number"
1581
+ ]
1582
+ }
1583
+ },
1584
+ "handleFailure": {
1585
+ "type": "string",
1586
+ "enum": [
1587
+ "ignore",
1588
+ "fail"
1589
+ ],
1590
+ "description": "return failure or ignore failure",
1591
+ "default": "ignore"
1592
+ },
1593
+ "requestFields": {
1594
+ "type": "object",
1595
+ "description": "The json object with response fields of the call to getDevice",
1596
+ "additionalProperties": {
1597
+ "type": [
1598
+ "string",
1599
+ "number"
1600
+ ]
1601
+ },
1602
+ "properties": {}
1603
+ },
1604
+ "responseDatakey": {
1605
+ "type": "string",
1606
+ "description": "place in the response where the data is - supports jsonquery",
1607
+ "default": ""
1608
+ },
1609
+ "responseFields": {
1610
+ "type": "object",
1611
+ "description": "The json object with response fields of the call to getDevice",
1612
+ "additionalProperties": {
1613
+ "type": [
1614
+ "string",
1615
+ "number"
1616
+ ]
1617
+ }
1618
+ }
1619
+ }
1620
+ }
1621
+ },
1622
+ "cachedTasks": {
1623
+ "type": "array",
1624
+ "description": "Information for the call(s) used to populate the cache",
1625
+ "items": {
1626
+ "type": "object",
1627
+ "properties": {
1628
+ "name": {
1629
+ "type": "string",
1630
+ "description": "the name of the task/action that should utilize cached information",
1631
+ "default": ""
1632
+ },
1633
+ "filterField": {
1634
+ "type": "string",
1635
+ "description": "the field that contains filter information for this call",
1636
+ "default": ""
1637
+ },
1638
+ "filterLoc": {
1639
+ "type": "string",
1640
+ "description": "the field that contains the location of the filter field",
1641
+ "default": ""
1642
+ }
1643
+ }
1644
+ }
1645
+ }
1646
+ }
1647
+ }
1648
+ }
1649
+ }
1259
1650
  }
1260
1651
  }
1261
1652
  }