@ogcio/building-blocks-sdk 0.2.33 → 0.2.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.gitleaksignore +3 -1
- package/.release-please-manifest.json +1 -1
- package/CHANGELOG.md +7 -0
- package/dist/client/clients/featureFlags/schema.d.ts +3297 -1729
- package/dist/client/clients/featureFlags/schema.d.ts.map +1 -1
- package/dist/client/clients/messaging/index.d.ts +2 -0
- package/dist/client/clients/messaging/index.d.ts.map +1 -1
- package/dist/client/clients/messaging/schema.d.ts +163 -0
- package/dist/client/clients/messaging/schema.d.ts.map +1 -1
- package/dist/client/clients/profile/index.d.ts.map +1 -1
- package/dist/client/clients/profile/schema.d.ts +2 -0
- package/dist/client/clients/profile/schema.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/client/clients/featureFlags/open-api-definition.json +3171 -671
- package/src/client/clients/featureFlags/schema.ts +3297 -1729
- package/src/client/clients/messaging/open-api-definition.json +328 -0
- package/src/client/clients/messaging/schema.ts +163 -0
- package/src/client/clients/profile/open-api-definition.json +16 -0
- package/src/client/clients/profile/schema.ts +2 -0
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
],
|
|
8
8
|
"info": {
|
|
9
9
|
"title": "Unleash API",
|
|
10
|
-
"version": "6.
|
|
10
|
+
"version": "6.10.0"
|
|
11
11
|
},
|
|
12
12
|
"security": [
|
|
13
13
|
{
|
|
@@ -1146,7 +1146,8 @@
|
|
|
1146
1146
|
"clientIp": {
|
|
1147
1147
|
"type": "string",
|
|
1148
1148
|
"description": "An IP address identifying the instance of the application running the SDK",
|
|
1149
|
-
"example": "192.168.0.1"
|
|
1149
|
+
"example": "192.168.0.1",
|
|
1150
|
+
"nullable": true
|
|
1150
1151
|
},
|
|
1151
1152
|
"lastSeen": {
|
|
1152
1153
|
"type": "string",
|
|
@@ -1200,6 +1201,8 @@
|
|
|
1200
1201
|
"name",
|
|
1201
1202
|
"instanceCount",
|
|
1202
1203
|
"sdks",
|
|
1204
|
+
"frontendSdks",
|
|
1205
|
+
"backendSdks",
|
|
1203
1206
|
"lastSeen",
|
|
1204
1207
|
"issues"
|
|
1205
1208
|
],
|
|
@@ -1225,6 +1228,26 @@
|
|
|
1225
1228
|
"unleash-client-node:5.3.0"
|
|
1226
1229
|
]
|
|
1227
1230
|
},
|
|
1231
|
+
"frontendSdks": {
|
|
1232
|
+
"description": "Frontend SDKs used in the application environment",
|
|
1233
|
+
"type": "array",
|
|
1234
|
+
"items": {
|
|
1235
|
+
"type": "string"
|
|
1236
|
+
},
|
|
1237
|
+
"example": [
|
|
1238
|
+
"unleash-client-js:3.7.5"
|
|
1239
|
+
]
|
|
1240
|
+
},
|
|
1241
|
+
"backendSdks": {
|
|
1242
|
+
"description": "Backend SDKs used in the application environment",
|
|
1243
|
+
"type": "array",
|
|
1244
|
+
"items": {
|
|
1245
|
+
"type": "string"
|
|
1246
|
+
},
|
|
1247
|
+
"example": [
|
|
1248
|
+
"unleash-client-node:5.4.0"
|
|
1249
|
+
]
|
|
1250
|
+
},
|
|
1228
1251
|
"lastSeen": {
|
|
1229
1252
|
"type": "string",
|
|
1230
1253
|
"nullable": true,
|
|
@@ -1408,117 +1431,6 @@
|
|
|
1408
1431
|
}
|
|
1409
1432
|
}
|
|
1410
1433
|
},
|
|
1411
|
-
"archivedFeatureSchema": {
|
|
1412
|
-
"type": "object",
|
|
1413
|
-
"additionalProperties": false,
|
|
1414
|
-
"required": [
|
|
1415
|
-
"name",
|
|
1416
|
-
"project"
|
|
1417
|
-
],
|
|
1418
|
-
"description": "An archived project feature flag definition",
|
|
1419
|
-
"properties": {
|
|
1420
|
-
"name": {
|
|
1421
|
-
"type": "string",
|
|
1422
|
-
"example": "disable-comments",
|
|
1423
|
-
"description": "Unique feature name"
|
|
1424
|
-
},
|
|
1425
|
-
"type": {
|
|
1426
|
-
"type": "string",
|
|
1427
|
-
"example": "kill-switch",
|
|
1428
|
-
"description": "Type of the flag e.g. experiment, kill-switch, release, operational, permission"
|
|
1429
|
-
},
|
|
1430
|
-
"description": {
|
|
1431
|
-
"type": "string",
|
|
1432
|
-
"nullable": true,
|
|
1433
|
-
"example": "Controls disabling of the comments section in case of an incident",
|
|
1434
|
-
"description": "Detailed description of the feature"
|
|
1435
|
-
},
|
|
1436
|
-
"project": {
|
|
1437
|
-
"type": "string",
|
|
1438
|
-
"example": "dx-squad",
|
|
1439
|
-
"description": "Name of the project the feature belongs to"
|
|
1440
|
-
},
|
|
1441
|
-
"stale": {
|
|
1442
|
-
"type": "boolean",
|
|
1443
|
-
"example": false,
|
|
1444
|
-
"description": "`true` if the feature is stale based on the age and feature type, otherwise `false`."
|
|
1445
|
-
},
|
|
1446
|
-
"impressionData": {
|
|
1447
|
-
"type": "boolean",
|
|
1448
|
-
"example": false,
|
|
1449
|
-
"description": "`true` if the impression data collection is enabled for the feature, otherwise `false`."
|
|
1450
|
-
},
|
|
1451
|
-
"createdAt": {
|
|
1452
|
-
"type": "string",
|
|
1453
|
-
"format": "date-time",
|
|
1454
|
-
"example": "2023-01-28T15:21:39.975Z",
|
|
1455
|
-
"description": "The date the feature was created"
|
|
1456
|
-
},
|
|
1457
|
-
"archivedAt": {
|
|
1458
|
-
"type": "string",
|
|
1459
|
-
"format": "date-time",
|
|
1460
|
-
"example": "2023-01-29T15:21:39.975Z",
|
|
1461
|
-
"description": "The date the feature was archived"
|
|
1462
|
-
},
|
|
1463
|
-
"lastSeenAt": {
|
|
1464
|
-
"type": "string",
|
|
1465
|
-
"format": "date-time",
|
|
1466
|
-
"nullable": true,
|
|
1467
|
-
"deprecated": true,
|
|
1468
|
-
"example": "2023-01-28T16:21:39.975Z",
|
|
1469
|
-
"description": "The date when metrics where last collected for the feature. This field was deprecated in v5, use the one in featureEnvironmentSchema"
|
|
1470
|
-
},
|
|
1471
|
-
"environments": {
|
|
1472
|
-
"type": "array",
|
|
1473
|
-
"deprecated": true,
|
|
1474
|
-
"description": "The list of environments where the feature can be used",
|
|
1475
|
-
"items": {
|
|
1476
|
-
"type": "object",
|
|
1477
|
-
"properties": {
|
|
1478
|
-
"name": {
|
|
1479
|
-
"type": "string",
|
|
1480
|
-
"example": "my-dev-env",
|
|
1481
|
-
"description": "The name of the environment"
|
|
1482
|
-
},
|
|
1483
|
-
"lastSeenAt": {
|
|
1484
|
-
"type": "string",
|
|
1485
|
-
"format": "date-time",
|
|
1486
|
-
"nullable": true,
|
|
1487
|
-
"example": "2023-01-28T16:21:39.975Z",
|
|
1488
|
-
"description": "The date when metrics where last collected for the feature environment"
|
|
1489
|
-
},
|
|
1490
|
-
"enabled": {
|
|
1491
|
-
"type": "boolean",
|
|
1492
|
-
"example": true,
|
|
1493
|
-
"description": "`true` if the feature is enabled for the environment, otherwise `false`."
|
|
1494
|
-
}
|
|
1495
|
-
}
|
|
1496
|
-
}
|
|
1497
|
-
}
|
|
1498
|
-
}
|
|
1499
|
-
},
|
|
1500
|
-
"archivedFeaturesSchema": {
|
|
1501
|
-
"type": "object",
|
|
1502
|
-
"additionalProperties": false,
|
|
1503
|
-
"required": [
|
|
1504
|
-
"version",
|
|
1505
|
-
"features"
|
|
1506
|
-
],
|
|
1507
|
-
"description": "A list of archived features",
|
|
1508
|
-
"properties": {
|
|
1509
|
-
"version": {
|
|
1510
|
-
"type": "integer",
|
|
1511
|
-
"description": "The version of the feature's schema"
|
|
1512
|
-
},
|
|
1513
|
-
"features": {
|
|
1514
|
-
"type": "array",
|
|
1515
|
-
"items": {
|
|
1516
|
-
"$ref": "#/components/schemas/archivedFeatureSchema"
|
|
1517
|
-
},
|
|
1518
|
-
"description": "A list of features"
|
|
1519
|
-
}
|
|
1520
|
-
}
|
|
1521
|
-
},
|
|
1522
1434
|
"batchFeaturesSchema": {
|
|
1523
1435
|
"type": "object",
|
|
1524
1436
|
"description": "A list of feature flag names for batch operations",
|
|
@@ -1663,10 +1575,32 @@
|
|
|
1663
1575
|
"type": "string"
|
|
1664
1576
|
}
|
|
1665
1577
|
},
|
|
1578
|
+
"projects": {
|
|
1579
|
+
"description": "The list of projects used in the application",
|
|
1580
|
+
"type": "array",
|
|
1581
|
+
"example": [
|
|
1582
|
+
"projectA",
|
|
1583
|
+
"projectB"
|
|
1584
|
+
],
|
|
1585
|
+
"items": {
|
|
1586
|
+
"type": "string"
|
|
1587
|
+
}
|
|
1588
|
+
},
|
|
1666
1589
|
"sdkVersion": {
|
|
1667
1590
|
"description": "The version the sdk is running. Typically <client>:<version>",
|
|
1668
1591
|
"example": "unleash-client-java:8.0.0",
|
|
1669
1592
|
"type": "string"
|
|
1593
|
+
},
|
|
1594
|
+
"sdkType": {
|
|
1595
|
+
"description": "The sdk type",
|
|
1596
|
+
"example": "backend",
|
|
1597
|
+
"type": "string",
|
|
1598
|
+
"enum": [
|
|
1599
|
+
"frontend",
|
|
1600
|
+
"backend",
|
|
1601
|
+
null
|
|
1602
|
+
],
|
|
1603
|
+
"nullable": true
|
|
1670
1604
|
}
|
|
1671
1605
|
}
|
|
1672
1606
|
},
|
|
@@ -1869,35 +1803,141 @@
|
|
|
1869
1803
|
"clientFeaturesDeltaSchema": {
|
|
1870
1804
|
"type": "object",
|
|
1871
1805
|
"required": [
|
|
1872
|
-
"
|
|
1873
|
-
"revisionId",
|
|
1874
|
-
"removed"
|
|
1806
|
+
"events"
|
|
1875
1807
|
],
|
|
1876
1808
|
"description": "Schema for delta updates of feature configurations.",
|
|
1877
1809
|
"properties": {
|
|
1878
|
-
"
|
|
1879
|
-
"description": "A list of
|
|
1880
|
-
"type": "array",
|
|
1881
|
-
"items": {
|
|
1882
|
-
"$ref": "#/components/schemas/clientFeatureSchema"
|
|
1883
|
-
}
|
|
1884
|
-
},
|
|
1885
|
-
"revisionId": {
|
|
1886
|
-
"type": "number",
|
|
1887
|
-
"description": "The revision ID of the delta update."
|
|
1888
|
-
},
|
|
1889
|
-
"removed": {
|
|
1890
|
-
"description": "A list of feature names that were removed.",
|
|
1891
|
-
"type": "array",
|
|
1892
|
-
"items": {
|
|
1893
|
-
"type": "string"
|
|
1894
|
-
}
|
|
1895
|
-
},
|
|
1896
|
-
"segments": {
|
|
1897
|
-
"description": "A list of [Segments](https://docs.getunleash.io/reference/segments) configured for this Unleash instance",
|
|
1810
|
+
"events": {
|
|
1811
|
+
"description": "A list of delta events.",
|
|
1898
1812
|
"type": "array",
|
|
1899
1813
|
"items": {
|
|
1900
|
-
"
|
|
1814
|
+
"type": "object",
|
|
1815
|
+
"anyOf": [
|
|
1816
|
+
{
|
|
1817
|
+
"type": "object",
|
|
1818
|
+
"required": [
|
|
1819
|
+
"eventId",
|
|
1820
|
+
"type",
|
|
1821
|
+
"feature"
|
|
1822
|
+
],
|
|
1823
|
+
"properties": {
|
|
1824
|
+
"eventId": {
|
|
1825
|
+
"type": "number"
|
|
1826
|
+
},
|
|
1827
|
+
"type": {
|
|
1828
|
+
"type": "string",
|
|
1829
|
+
"enum": [
|
|
1830
|
+
"feature-updated"
|
|
1831
|
+
]
|
|
1832
|
+
},
|
|
1833
|
+
"feature": {
|
|
1834
|
+
"$ref": "#/components/schemas/clientFeatureSchema"
|
|
1835
|
+
}
|
|
1836
|
+
}
|
|
1837
|
+
},
|
|
1838
|
+
{
|
|
1839
|
+
"type": "object",
|
|
1840
|
+
"required": [
|
|
1841
|
+
"eventId",
|
|
1842
|
+
"type",
|
|
1843
|
+
"featureName",
|
|
1844
|
+
"project"
|
|
1845
|
+
],
|
|
1846
|
+
"properties": {
|
|
1847
|
+
"eventId": {
|
|
1848
|
+
"type": "number"
|
|
1849
|
+
},
|
|
1850
|
+
"type": {
|
|
1851
|
+
"type": "string",
|
|
1852
|
+
"enum": [
|
|
1853
|
+
"feature-removed"
|
|
1854
|
+
]
|
|
1855
|
+
},
|
|
1856
|
+
"featureName": {
|
|
1857
|
+
"type": "string"
|
|
1858
|
+
},
|
|
1859
|
+
"project": {
|
|
1860
|
+
"type": "string"
|
|
1861
|
+
}
|
|
1862
|
+
}
|
|
1863
|
+
},
|
|
1864
|
+
{
|
|
1865
|
+
"type": "object",
|
|
1866
|
+
"required": [
|
|
1867
|
+
"eventId",
|
|
1868
|
+
"type",
|
|
1869
|
+
"segment"
|
|
1870
|
+
],
|
|
1871
|
+
"properties": {
|
|
1872
|
+
"eventId": {
|
|
1873
|
+
"type": "number"
|
|
1874
|
+
},
|
|
1875
|
+
"type": {
|
|
1876
|
+
"type": "string",
|
|
1877
|
+
"enum": [
|
|
1878
|
+
"segment-updated"
|
|
1879
|
+
]
|
|
1880
|
+
},
|
|
1881
|
+
"segment": {
|
|
1882
|
+
"$ref": "#/components/schemas/clientSegmentSchema"
|
|
1883
|
+
}
|
|
1884
|
+
}
|
|
1885
|
+
},
|
|
1886
|
+
{
|
|
1887
|
+
"type": "object",
|
|
1888
|
+
"required": [
|
|
1889
|
+
"eventId",
|
|
1890
|
+
"type",
|
|
1891
|
+
"segmentId"
|
|
1892
|
+
],
|
|
1893
|
+
"properties": {
|
|
1894
|
+
"eventId": {
|
|
1895
|
+
"type": "number"
|
|
1896
|
+
},
|
|
1897
|
+
"type": {
|
|
1898
|
+
"type": "string",
|
|
1899
|
+
"enum": [
|
|
1900
|
+
"segment-removed"
|
|
1901
|
+
]
|
|
1902
|
+
},
|
|
1903
|
+
"segmentId": {
|
|
1904
|
+
"type": "number"
|
|
1905
|
+
}
|
|
1906
|
+
}
|
|
1907
|
+
},
|
|
1908
|
+
{
|
|
1909
|
+
"type": "object",
|
|
1910
|
+
"required": [
|
|
1911
|
+
"type",
|
|
1912
|
+
"features",
|
|
1913
|
+
"segments",
|
|
1914
|
+
"eventId"
|
|
1915
|
+
],
|
|
1916
|
+
"properties": {
|
|
1917
|
+
"eventId": {
|
|
1918
|
+
"type": "number"
|
|
1919
|
+
},
|
|
1920
|
+
"type": {
|
|
1921
|
+
"type": "string",
|
|
1922
|
+
"enum": [
|
|
1923
|
+
"hydration"
|
|
1924
|
+
]
|
|
1925
|
+
},
|
|
1926
|
+
"features": {
|
|
1927
|
+
"type": "array",
|
|
1928
|
+
"items": {
|
|
1929
|
+
"$ref": "#/components/schemas/clientFeatureSchema"
|
|
1930
|
+
}
|
|
1931
|
+
},
|
|
1932
|
+
"segments": {
|
|
1933
|
+
"type": "array",
|
|
1934
|
+
"items": {
|
|
1935
|
+
"$ref": "#/components/schemas/clientSegmentSchema"
|
|
1936
|
+
}
|
|
1937
|
+
}
|
|
1938
|
+
}
|
|
1939
|
+
}
|
|
1940
|
+
]
|
|
1901
1941
|
}
|
|
1902
1942
|
}
|
|
1903
1943
|
}
|
|
@@ -2676,7 +2716,7 @@
|
|
|
2676
2716
|
"type": "string",
|
|
2677
2717
|
"nullable": true,
|
|
2678
2718
|
"description": "An example of a feature name that matches the pattern. Must itself match the pattern supplied.",
|
|
2679
|
-
"example": "dx.
|
|
2719
|
+
"example": "dx.feature.1-135"
|
|
2680
2720
|
},
|
|
2681
2721
|
"description": {
|
|
2682
2722
|
"type": "string",
|
|
@@ -2904,7 +2944,7 @@
|
|
|
2904
2944
|
}
|
|
2905
2945
|
},
|
|
2906
2946
|
"createPatSchema": {
|
|
2907
|
-
"description": "Describes the properties required to create a [personal access token](https://docs.getunleash.io/
|
|
2947
|
+
"description": "Describes the properties required to create a [personal access token](https://docs.getunleash.io/reference/api-tokens-and-client-keys#personal-access-tokens), or PAT. PATs are automatically scoped to the authenticated user.",
|
|
2908
2948
|
"type": "object",
|
|
2909
2949
|
"required": [
|
|
2910
2950
|
"description",
|
|
@@ -3085,6 +3125,13 @@
|
|
|
3085
3125
|
"maxLength": 50,
|
|
3086
3126
|
"description": "The [type](https://docs.getunleash.io/reference/feature-toggles#tags) of the tag",
|
|
3087
3127
|
"example": "simple"
|
|
3128
|
+
},
|
|
3129
|
+
"color": {
|
|
3130
|
+
"type": "string",
|
|
3131
|
+
"description": "The hexadecimal color code for the tag type.",
|
|
3132
|
+
"example": "#FFFFFF",
|
|
3133
|
+
"pattern": "^#[0-9A-Fa-f]{6}$",
|
|
3134
|
+
"nullable": true
|
|
3088
3135
|
}
|
|
3089
3136
|
}
|
|
3090
3137
|
},
|
|
@@ -3459,6 +3506,9 @@
|
|
|
3459
3506
|
"feature-type-updated",
|
|
3460
3507
|
"feature-completed",
|
|
3461
3508
|
"feature-uncompleted",
|
|
3509
|
+
"feature-link-added",
|
|
3510
|
+
"feature-link-removed",
|
|
3511
|
+
"feature-link-updated",
|
|
3462
3512
|
"strategy-order-changed",
|
|
3463
3513
|
"drop-feature-tags",
|
|
3464
3514
|
"feature-untagged",
|
|
@@ -3589,10 +3639,13 @@
|
|
|
3589
3639
|
"release-plan-template-created",
|
|
3590
3640
|
"release-plan-template-updated",
|
|
3591
3641
|
"release-plan-template-deleted",
|
|
3642
|
+
"release-plan-template-archived",
|
|
3592
3643
|
"release-plan-added",
|
|
3593
3644
|
"release-plan-removed",
|
|
3594
3645
|
"release-plan-milestone-started",
|
|
3595
|
-
"user-preference-updated"
|
|
3646
|
+
"user-preference-updated",
|
|
3647
|
+
"scim-users-deleted",
|
|
3648
|
+
"scim-groups-deleted"
|
|
3596
3649
|
],
|
|
3597
3650
|
"example": "feature-created"
|
|
3598
3651
|
},
|
|
@@ -3655,7 +3708,7 @@
|
|
|
3655
3708
|
"projects",
|
|
3656
3709
|
"type"
|
|
3657
3710
|
],
|
|
3658
|
-
"description": "A representation of a client token, limiting access to [CLIENT](https://docs.getunleash.io/reference/api-tokens-and-client-keys#client-tokens) (used by serverside SDKs) or [FRONTEND](https://docs.getunleash.io/reference/api-tokens-and-client-keys#
|
|
3711
|
+
"description": "A representation of a client token, limiting access to [CLIENT](https://docs.getunleash.io/reference/api-tokens-and-client-keys#client-tokens) (used by serverside SDKs) or [FRONTEND](https://docs.getunleash.io/reference/api-tokens-and-client-keys#frontend-tokens) (used by proxy SDKs)",
|
|
3659
3712
|
"properties": {
|
|
3660
3713
|
"projects": {
|
|
3661
3714
|
"description": "The list of projects this token has access to. If the token has access to specific projects they will be listed here. If the token has access to all projects it will be represented as [`*`]",
|
|
@@ -3669,7 +3722,7 @@
|
|
|
3669
3722
|
]
|
|
3670
3723
|
},
|
|
3671
3724
|
"type": {
|
|
3672
|
-
"description": "The [API token](https://docs.getunleash.io/reference/api-tokens-and-client-keys
|
|
3725
|
+
"description": "The [API token](https://docs.getunleash.io/reference/api-tokens-and-client-keys)'s **type**. Unleash supports three different types of API tokens ([ADMIN](https://docs.getunleash.io/reference/api-tokens-and-client-keys#admin-tokens), [CLIENT](https://docs.getunleash.io/reference/api-tokens-and-client-keys#client-tokens), [FRONTEND](https://docs.getunleash.io/reference/api-tokens-and-client-keys#frontend-tokens)). They all have varying access, so when validating a token it's important to know what kind you're dealing with",
|
|
3673
3726
|
"type": "string",
|
|
3674
3727
|
"enum": [
|
|
3675
3728
|
"client",
|
|
@@ -3752,6 +3805,18 @@
|
|
|
3752
3805
|
"defaultStrategy": {
|
|
3753
3806
|
"description": "The strategy configuration to add when enabling a feature environment by default",
|
|
3754
3807
|
"$ref": "#/components/schemas/createFeatureStrategySchema"
|
|
3808
|
+
},
|
|
3809
|
+
"visible": {
|
|
3810
|
+
"type": "boolean",
|
|
3811
|
+
"example": true,
|
|
3812
|
+
"description": "Indicates whether the environment can be enabled for feature flags in the project"
|
|
3813
|
+
},
|
|
3814
|
+
"requiredApprovals": {
|
|
3815
|
+
"type": "integer",
|
|
3816
|
+
"nullable": true,
|
|
3817
|
+
"description": "Experimental field. The number of approvals required before a change request can be applied in this environment.",
|
|
3818
|
+
"minimum": 1,
|
|
3819
|
+
"example": 3
|
|
3755
3820
|
}
|
|
3756
3821
|
}
|
|
3757
3822
|
},
|
|
@@ -3812,6 +3877,13 @@
|
|
|
3812
3877
|
"minimum": 0,
|
|
3813
3878
|
"example": 10,
|
|
3814
3879
|
"description": "The number of enabled toggles for the project environment"
|
|
3880
|
+
},
|
|
3881
|
+
"requiredApprovals": {
|
|
3882
|
+
"type": "integer",
|
|
3883
|
+
"nullable": true,
|
|
3884
|
+
"description": "Experimental field. The number of approvals required before a change request can be applied in this environment.",
|
|
3885
|
+
"minimum": 1,
|
|
3886
|
+
"example": 3
|
|
3815
3887
|
}
|
|
3816
3888
|
}
|
|
3817
3889
|
},
|
|
@@ -3930,6 +4002,9 @@
|
|
|
3930
4002
|
"feature-type-updated",
|
|
3931
4003
|
"feature-completed",
|
|
3932
4004
|
"feature-uncompleted",
|
|
4005
|
+
"feature-link-added",
|
|
4006
|
+
"feature-link-removed",
|
|
4007
|
+
"feature-link-updated",
|
|
3933
4008
|
"strategy-order-changed",
|
|
3934
4009
|
"drop-feature-tags",
|
|
3935
4010
|
"feature-untagged",
|
|
@@ -4060,10 +4135,13 @@
|
|
|
4060
4135
|
"release-plan-template-created",
|
|
4061
4136
|
"release-plan-template-updated",
|
|
4062
4137
|
"release-plan-template-deleted",
|
|
4138
|
+
"release-plan-template-archived",
|
|
4063
4139
|
"release-plan-added",
|
|
4064
4140
|
"release-plan-removed",
|
|
4065
4141
|
"release-plan-milestone-started",
|
|
4066
|
-
"user-preference-updated"
|
|
4142
|
+
"user-preference-updated",
|
|
4143
|
+
"scim-users-deleted",
|
|
4144
|
+
"scim-groups-deleted"
|
|
4067
4145
|
],
|
|
4068
4146
|
"example": "feature-created"
|
|
4069
4147
|
},
|
|
@@ -4147,6 +4225,12 @@
|
|
|
4147
4225
|
"type": "string",
|
|
4148
4226
|
"nullable": true,
|
|
4149
4227
|
"description": "A markdown-formatted summary of the event."
|
|
4228
|
+
},
|
|
4229
|
+
"ip": {
|
|
4230
|
+
"type": "string",
|
|
4231
|
+
"nullable": true,
|
|
4232
|
+
"description": "The IP address of the user that created the event. Only available in Enterprise.",
|
|
4233
|
+
"example": "192.168.1.1"
|
|
4150
4234
|
}
|
|
4151
4235
|
}
|
|
4152
4236
|
},
|
|
@@ -4448,6 +4532,13 @@
|
|
|
4448
4532
|
"items": {
|
|
4449
4533
|
"$ref": "#/components/schemas/featureDependenciesSchema"
|
|
4450
4534
|
}
|
|
4535
|
+
},
|
|
4536
|
+
"links": {
|
|
4537
|
+
"type": "array",
|
|
4538
|
+
"description": "A list of links for features in `features` list.",
|
|
4539
|
+
"items": {
|
|
4540
|
+
"$ref": "#/components/schemas/featureLinksSchema"
|
|
4541
|
+
}
|
|
4451
4542
|
}
|
|
4452
4543
|
}
|
|
4453
4544
|
},
|
|
@@ -4589,6 +4680,28 @@
|
|
|
4589
4680
|
},
|
|
4590
4681
|
"description": "A list of variants for the feature environment"
|
|
4591
4682
|
},
|
|
4683
|
+
"changeRequestIds": {
|
|
4684
|
+
"type": "array",
|
|
4685
|
+
"items": {
|
|
4686
|
+
"type": "number"
|
|
4687
|
+
},
|
|
4688
|
+
"description": "Experimental. A list of change request identifiers for actionable change requests that are not Cancelled, Rejected or Approved."
|
|
4689
|
+
},
|
|
4690
|
+
"milestoneName": {
|
|
4691
|
+
"type": "string",
|
|
4692
|
+
"example": "Phase One",
|
|
4693
|
+
"description": "Experimental: The name of the currently active release plan milestone"
|
|
4694
|
+
},
|
|
4695
|
+
"milestoneOrder": {
|
|
4696
|
+
"type": "number",
|
|
4697
|
+
"example": 0,
|
|
4698
|
+
"description": "Experimental: The zero-indexed order of currently active milestone in the list of all release plan milestones"
|
|
4699
|
+
},
|
|
4700
|
+
"totalMilestones": {
|
|
4701
|
+
"type": "number",
|
|
4702
|
+
"example": 0,
|
|
4703
|
+
"description": "Experimental: The total number of milestones in the feature environment release plan"
|
|
4704
|
+
},
|
|
4592
4705
|
"lastSeenAt": {
|
|
4593
4706
|
"type": "string",
|
|
4594
4707
|
"format": "date-time",
|
|
@@ -4667,6 +4780,45 @@
|
|
|
4667
4780
|
}
|
|
4668
4781
|
}
|
|
4669
4782
|
},
|
|
4783
|
+
"featureLifecycleCountSchema": {
|
|
4784
|
+
"type": "object",
|
|
4785
|
+
"description": "A number features in each of the lifecycle stages",
|
|
4786
|
+
"required": [
|
|
4787
|
+
"initial",
|
|
4788
|
+
"preLive",
|
|
4789
|
+
"live",
|
|
4790
|
+
"completed",
|
|
4791
|
+
"archived"
|
|
4792
|
+
],
|
|
4793
|
+
"additionalProperties": false,
|
|
4794
|
+
"properties": {
|
|
4795
|
+
"initial": {
|
|
4796
|
+
"type": "number",
|
|
4797
|
+
"example": 1,
|
|
4798
|
+
"description": "Number of features in the initial stage"
|
|
4799
|
+
},
|
|
4800
|
+
"preLive": {
|
|
4801
|
+
"type": "number",
|
|
4802
|
+
"example": 1,
|
|
4803
|
+
"description": "Number of features in the pre-live stage"
|
|
4804
|
+
},
|
|
4805
|
+
"live": {
|
|
4806
|
+
"type": "number",
|
|
4807
|
+
"example": 1,
|
|
4808
|
+
"description": "Number of features in the live stage"
|
|
4809
|
+
},
|
|
4810
|
+
"completed": {
|
|
4811
|
+
"type": "number",
|
|
4812
|
+
"example": 1,
|
|
4813
|
+
"description": "Number of features in the completed stage"
|
|
4814
|
+
},
|
|
4815
|
+
"archived": {
|
|
4816
|
+
"type": "number",
|
|
4817
|
+
"example": 1,
|
|
4818
|
+
"description": "Number of features in the archived stage"
|
|
4819
|
+
}
|
|
4820
|
+
}
|
|
4821
|
+
},
|
|
4670
4822
|
"featureLifecycleSchema": {
|
|
4671
4823
|
"type": "array",
|
|
4672
4824
|
"description": "A list of lifecycle stages for a given feature",
|
|
@@ -4705,6 +4857,49 @@
|
|
|
4705
4857
|
"description": "The lifecycle stage of the feature"
|
|
4706
4858
|
}
|
|
4707
4859
|
},
|
|
4860
|
+
"featureLinkSchema": {
|
|
4861
|
+
"type": "object",
|
|
4862
|
+
"required": [
|
|
4863
|
+
"url"
|
|
4864
|
+
],
|
|
4865
|
+
"properties": {
|
|
4866
|
+
"url": {
|
|
4867
|
+
"type": "string",
|
|
4868
|
+
"example": "https://github.com/search?q=cleanupReminder&type=code",
|
|
4869
|
+
"description": "The URL the feature is linked to"
|
|
4870
|
+
},
|
|
4871
|
+
"title": {
|
|
4872
|
+
"type": "string",
|
|
4873
|
+
"example": "Github cleanup",
|
|
4874
|
+
"description": "The description of the link",
|
|
4875
|
+
"nullable": true
|
|
4876
|
+
}
|
|
4877
|
+
},
|
|
4878
|
+
"description": "The link to any URL related to the feature"
|
|
4879
|
+
},
|
|
4880
|
+
"featureLinksSchema": {
|
|
4881
|
+
"type": "object",
|
|
4882
|
+
"description": "A list of links for a feature",
|
|
4883
|
+
"required": [
|
|
4884
|
+
"feature",
|
|
4885
|
+
"links"
|
|
4886
|
+
],
|
|
4887
|
+
"additionalProperties": false,
|
|
4888
|
+
"properties": {
|
|
4889
|
+
"feature": {
|
|
4890
|
+
"type": "string",
|
|
4891
|
+
"description": "The name of the child feature.",
|
|
4892
|
+
"example": "child_feature"
|
|
4893
|
+
},
|
|
4894
|
+
"links": {
|
|
4895
|
+
"type": "array",
|
|
4896
|
+
"description": "List of feature links",
|
|
4897
|
+
"items": {
|
|
4898
|
+
"$ref": "#/components/schemas/featureLinkSchema"
|
|
4899
|
+
}
|
|
4900
|
+
}
|
|
4901
|
+
}
|
|
4902
|
+
},
|
|
4708
4903
|
"featureMetricsSchema": {
|
|
4709
4904
|
"type": "object",
|
|
4710
4905
|
"additionalProperties": false,
|
|
@@ -4974,6 +5169,36 @@
|
|
|
4974
5169
|
}
|
|
4975
5170
|
}
|
|
4976
5171
|
}
|
|
5172
|
+
},
|
|
5173
|
+
"links": {
|
|
5174
|
+
"type": "array",
|
|
5175
|
+
"items": {
|
|
5176
|
+
"type": "object",
|
|
5177
|
+
"additionalProperties": false,
|
|
5178
|
+
"required": [
|
|
5179
|
+
"id",
|
|
5180
|
+
"url"
|
|
5181
|
+
],
|
|
5182
|
+
"properties": {
|
|
5183
|
+
"id": {
|
|
5184
|
+
"type": "string",
|
|
5185
|
+
"example": "01JTJNCJ5XVP2KPJFA03YRBZCA",
|
|
5186
|
+
"description": "The id of the link"
|
|
5187
|
+
},
|
|
5188
|
+
"url": {
|
|
5189
|
+
"type": "string",
|
|
5190
|
+
"example": "https://github.com/search?q=cleanupReminder&type=code",
|
|
5191
|
+
"description": "The URL the feature is linked to"
|
|
5192
|
+
},
|
|
5193
|
+
"title": {
|
|
5194
|
+
"type": "string",
|
|
5195
|
+
"example": "Github cleanup",
|
|
5196
|
+
"description": "The description of the link",
|
|
5197
|
+
"nullable": true
|
|
5198
|
+
}
|
|
5199
|
+
}
|
|
5200
|
+
},
|
|
5201
|
+
"description": "The list of links. This is an experimental field and may change."
|
|
4977
5202
|
}
|
|
4978
5203
|
}
|
|
4979
5204
|
},
|
|
@@ -5035,6 +5260,28 @@
|
|
|
5035
5260
|
},
|
|
5036
5261
|
"description": "A list of variants for the feature environment"
|
|
5037
5262
|
},
|
|
5263
|
+
"changeRequestIds": {
|
|
5264
|
+
"type": "array",
|
|
5265
|
+
"items": {
|
|
5266
|
+
"type": "number"
|
|
5267
|
+
},
|
|
5268
|
+
"description": "Experimental. A list of change request identifiers for actionable change requests that are not Cancelled, Rejected or Approved."
|
|
5269
|
+
},
|
|
5270
|
+
"milestoneName": {
|
|
5271
|
+
"type": "string",
|
|
5272
|
+
"example": "Phase One",
|
|
5273
|
+
"description": "Experimental: The name of the currently active release plan milestone"
|
|
5274
|
+
},
|
|
5275
|
+
"milestoneOrder": {
|
|
5276
|
+
"type": "number",
|
|
5277
|
+
"example": 0,
|
|
5278
|
+
"description": "Experimental: The zero-indexed order of currently active milestone in the list of all release plan milestones"
|
|
5279
|
+
},
|
|
5280
|
+
"totalMilestones": {
|
|
5281
|
+
"type": "number",
|
|
5282
|
+
"example": 0,
|
|
5283
|
+
"description": "Experimental: The total number of milestones in the feature environment release plan"
|
|
5284
|
+
},
|
|
5038
5285
|
"lastSeenAt": {
|
|
5039
5286
|
"type": "string",
|
|
5040
5287
|
"format": "date-time",
|
|
@@ -5789,6 +6036,63 @@
|
|
|
5789
6036
|
}
|
|
5790
6037
|
}
|
|
5791
6038
|
},
|
|
6039
|
+
"frontendApiFeaturesPostSchema": {
|
|
6040
|
+
"description": "The Unleash frontend API POST request body.",
|
|
6041
|
+
"type": "object",
|
|
6042
|
+
"additionalProperties": true,
|
|
6043
|
+
"properties": {
|
|
6044
|
+
"context": {
|
|
6045
|
+
"description": "The Unleash context.",
|
|
6046
|
+
"type": "object",
|
|
6047
|
+
"additionalProperties": true,
|
|
6048
|
+
"properties": {
|
|
6049
|
+
"appName": {
|
|
6050
|
+
"type": "string",
|
|
6051
|
+
"minLength": 1,
|
|
6052
|
+
"example": "My cool application.",
|
|
6053
|
+
"description": "The name of the application."
|
|
6054
|
+
},
|
|
6055
|
+
"currentTime": {
|
|
6056
|
+
"type": "string",
|
|
6057
|
+
"format": "date-time",
|
|
6058
|
+
"example": "2022-07-05T12:56:41+02:00",
|
|
6059
|
+
"description": "A DateTime (or similar) data class instance or a string in an RFC3339-compatible format. Defaults to the current time if not set by the user."
|
|
6060
|
+
},
|
|
6061
|
+
"environment": {
|
|
6062
|
+
"type": "string",
|
|
6063
|
+
"deprecated": true,
|
|
6064
|
+
"description": "The environment the app is running in."
|
|
6065
|
+
},
|
|
6066
|
+
"properties": {
|
|
6067
|
+
"type": "object",
|
|
6068
|
+
"additionalProperties": {
|
|
6069
|
+
"type": "string"
|
|
6070
|
+
},
|
|
6071
|
+
"description": "Additional Unleash context properties",
|
|
6072
|
+
"example": {
|
|
6073
|
+
"customContextField": "this is one!",
|
|
6074
|
+
"otherCustomField": "3"
|
|
6075
|
+
}
|
|
6076
|
+
},
|
|
6077
|
+
"remoteAddress": {
|
|
6078
|
+
"type": "string",
|
|
6079
|
+
"example": "192.168.1.1",
|
|
6080
|
+
"description": "The app's IP address"
|
|
6081
|
+
},
|
|
6082
|
+
"sessionId": {
|
|
6083
|
+
"type": "string",
|
|
6084
|
+
"example": "b65e7b23-fec0-4814-a129-0e9861ef18fc",
|
|
6085
|
+
"description": "An identifier for the current session"
|
|
6086
|
+
},
|
|
6087
|
+
"userId": {
|
|
6088
|
+
"type": "string",
|
|
6089
|
+
"example": "username@provider.com",
|
|
6090
|
+
"description": "An identifier for the current user"
|
|
6091
|
+
}
|
|
6092
|
+
}
|
|
6093
|
+
}
|
|
6094
|
+
}
|
|
6095
|
+
},
|
|
5792
6096
|
"frontendApiFeaturesSchema": {
|
|
5793
6097
|
"type": "object",
|
|
5794
6098
|
"required": [
|
|
@@ -6953,7 +7257,7 @@
|
|
|
6953
7257
|
},
|
|
6954
7258
|
"patSchema": {
|
|
6955
7259
|
"type": "object",
|
|
6956
|
-
"description": "Describes a [personal access token](https://docs.getunleash.io/
|
|
7260
|
+
"description": "Describes a [personal access token](https://docs.getunleash.io/reference/api-tokens-and-client-keys#personal-access-tokens), or PAT. PATs are automatically scoped to the authenticated user.",
|
|
6957
7261
|
"required": [
|
|
6958
7262
|
"id",
|
|
6959
7263
|
"createdAt",
|
|
@@ -7048,7 +7352,7 @@
|
|
|
7048
7352
|
},
|
|
7049
7353
|
"patsSchema": {
|
|
7050
7354
|
"type": "object",
|
|
7051
|
-
"description": "Contains a collection of [personal access tokens](https://docs.getunleash.io/
|
|
7355
|
+
"description": "Contains a collection of [personal access tokens](https://docs.getunleash.io/reference/api-tokens-and-client-keys#personal-access-tokens), or PATs. PATs are automatically scoped to the authenticated user.",
|
|
7052
7356
|
"properties": {
|
|
7053
7357
|
"pats": {
|
|
7054
7358
|
"type": "array",
|
|
@@ -8479,6 +8783,27 @@
|
|
|
8479
8783
|
}
|
|
8480
8784
|
}
|
|
8481
8785
|
},
|
|
8786
|
+
"projectLinkTemplateSchema": {
|
|
8787
|
+
"type": "object",
|
|
8788
|
+
"description": "A template for a link that can be automatically added to new feature flags.",
|
|
8789
|
+
"required": [
|
|
8790
|
+
"urlTemplate"
|
|
8791
|
+
],
|
|
8792
|
+
"properties": {
|
|
8793
|
+
"title": {
|
|
8794
|
+
"type": "string",
|
|
8795
|
+
"description": "The title of the link.",
|
|
8796
|
+
"example": "Code search",
|
|
8797
|
+
"nullable": true
|
|
8798
|
+
},
|
|
8799
|
+
"urlTemplate": {
|
|
8800
|
+
"type": "string",
|
|
8801
|
+
"description": "The URL to use as a template. Can contain {{project}} or {{feature}} as placeholders.",
|
|
8802
|
+
"example": "https://github.com/search?type=code&q=repo%3AUnleash%2F{{project}}+{{feature}}"
|
|
8803
|
+
}
|
|
8804
|
+
},
|
|
8805
|
+
"additionalProperties": false
|
|
8806
|
+
},
|
|
8482
8807
|
"projectOverviewSchema": {
|
|
8483
8808
|
"type": "object",
|
|
8484
8809
|
"additionalProperties": false,
|
|
@@ -8533,6 +8858,13 @@
|
|
|
8533
8858
|
"featureNaming": {
|
|
8534
8859
|
"$ref": "#/components/schemas/createFeatureNamingPatternSchema"
|
|
8535
8860
|
},
|
|
8861
|
+
"linkTemplates": {
|
|
8862
|
+
"type": "array",
|
|
8863
|
+
"items": {
|
|
8864
|
+
"$ref": "#/components/schemas/projectLinkTemplateSchema"
|
|
8865
|
+
},
|
|
8866
|
+
"description": "A list of templates for links that will be automatically added to new feature flags."
|
|
8867
|
+
},
|
|
8536
8868
|
"members": {
|
|
8537
8869
|
"type": "number",
|
|
8538
8870
|
"example": 4,
|
|
@@ -10162,6 +10494,13 @@
|
|
|
10162
10494
|
"maxLength": 50,
|
|
10163
10495
|
"description": "The [type](https://docs.getunleash.io/reference/feature-toggles#tags) of the tag",
|
|
10164
10496
|
"example": "simple"
|
|
10497
|
+
},
|
|
10498
|
+
"color": {
|
|
10499
|
+
"type": "string",
|
|
10500
|
+
"description": "The hexadecimal color code for the tag type.",
|
|
10501
|
+
"example": "#FFFFFF",
|
|
10502
|
+
"pattern": "^#[0-9A-Fa-f]{6}$",
|
|
10503
|
+
"nullable": true
|
|
10165
10504
|
}
|
|
10166
10505
|
}
|
|
10167
10506
|
},
|
|
@@ -10188,6 +10527,13 @@
|
|
|
10188
10527
|
"nullable": true,
|
|
10189
10528
|
"description": "The icon of the tag type.",
|
|
10190
10529
|
"example": "not-really-used"
|
|
10530
|
+
},
|
|
10531
|
+
"color": {
|
|
10532
|
+
"type": "string",
|
|
10533
|
+
"nullable": true,
|
|
10534
|
+
"description": "The hexadecimal color code for the tag type.",
|
|
10535
|
+
"example": "#FFFFFF",
|
|
10536
|
+
"pattern": "^#[0-9A-Fa-f]{6}$"
|
|
10191
10537
|
}
|
|
10192
10538
|
}
|
|
10193
10539
|
},
|
|
@@ -10480,9 +10826,9 @@
|
|
|
10480
10826
|
"featureFlags": 5000
|
|
10481
10827
|
}
|
|
10482
10828
|
},
|
|
10483
|
-
"
|
|
10829
|
+
"prometheusAPIAvailable": {
|
|
10484
10830
|
"type": "boolean",
|
|
10485
|
-
"description": "Whether
|
|
10831
|
+
"description": "Whether a Prometheus API is available.",
|
|
10486
10832
|
"example": true
|
|
10487
10833
|
},
|
|
10488
10834
|
"frontendApiOrigins": {
|
|
@@ -10568,6 +10914,68 @@
|
|
|
10568
10914
|
"type": "number",
|
|
10569
10915
|
"description": "The maximum number of sessions that a user has.",
|
|
10570
10916
|
"example": 10
|
|
10917
|
+
},
|
|
10918
|
+
"unleashContext": {
|
|
10919
|
+
"type": "object",
|
|
10920
|
+
"description": "The context object used to configure the Unleash instance."
|
|
10921
|
+
}
|
|
10922
|
+
}
|
|
10923
|
+
},
|
|
10924
|
+
"unknownFlagSchema": {
|
|
10925
|
+
"type": "object",
|
|
10926
|
+
"additionalProperties": false,
|
|
10927
|
+
"required": [
|
|
10928
|
+
"name",
|
|
10929
|
+
"reportedBy"
|
|
10930
|
+
],
|
|
10931
|
+
"description": "An unknown flag that has been reported by the system",
|
|
10932
|
+
"properties": {
|
|
10933
|
+
"name": {
|
|
10934
|
+
"type": "string",
|
|
10935
|
+
"description": "The name of the unknown flag.",
|
|
10936
|
+
"example": "my-unknown-flag"
|
|
10937
|
+
},
|
|
10938
|
+
"reportedBy": {
|
|
10939
|
+
"description": "Details about the application that reported the unknown flag.",
|
|
10940
|
+
"type": "array",
|
|
10941
|
+
"items": {
|
|
10942
|
+
"type": "object",
|
|
10943
|
+
"additionalProperties": false,
|
|
10944
|
+
"required": [
|
|
10945
|
+
"appName",
|
|
10946
|
+
"seenAt"
|
|
10947
|
+
],
|
|
10948
|
+
"properties": {
|
|
10949
|
+
"appName": {
|
|
10950
|
+
"type": "string",
|
|
10951
|
+
"description": "The name of the application that reported the unknown flag.",
|
|
10952
|
+
"example": "my-app"
|
|
10953
|
+
},
|
|
10954
|
+
"seenAt": {
|
|
10955
|
+
"type": "string",
|
|
10956
|
+
"format": "date-time",
|
|
10957
|
+
"description": "The date and time when the unknown flag was reported.",
|
|
10958
|
+
"example": "2023-10-01T12:00:00Z"
|
|
10959
|
+
}
|
|
10960
|
+
}
|
|
10961
|
+
}
|
|
10962
|
+
}
|
|
10963
|
+
}
|
|
10964
|
+
},
|
|
10965
|
+
"unknownFlagsResponseSchema": {
|
|
10966
|
+
"type": "object",
|
|
10967
|
+
"additionalProperties": false,
|
|
10968
|
+
"required": [
|
|
10969
|
+
"unknownFlags"
|
|
10970
|
+
],
|
|
10971
|
+
"description": "A list of unknown flags that have been reported by the system",
|
|
10972
|
+
"properties": {
|
|
10973
|
+
"unknownFlags": {
|
|
10974
|
+
"description": "The list of recently reported unknown flags.",
|
|
10975
|
+
"type": "array",
|
|
10976
|
+
"items": {
|
|
10977
|
+
"$ref": "#/components/schemas/unknownFlagSchema"
|
|
10978
|
+
}
|
|
10571
10979
|
}
|
|
10572
10980
|
}
|
|
10573
10981
|
},
|
|
@@ -10822,6 +11230,12 @@
|
|
|
10822
11230
|
"type": "string",
|
|
10823
11231
|
"description": "The icon of the tag type.",
|
|
10824
11232
|
"example": "not-really-used"
|
|
11233
|
+
},
|
|
11234
|
+
"color": {
|
|
11235
|
+
"type": "string",
|
|
11236
|
+
"description": "The hexadecimal color code for the tag type.",
|
|
11237
|
+
"example": "#FFFFFF",
|
|
11238
|
+
"pattern": "^#[0-9A-Fa-f]{6}$"
|
|
10825
11239
|
}
|
|
10826
11240
|
}
|
|
10827
11241
|
},
|
|
@@ -10935,6 +11349,268 @@
|
|
|
10935
11349
|
}
|
|
10936
11350
|
}
|
|
10937
11351
|
},
|
|
11352
|
+
"userAccessOverviewSchema": {
|
|
11353
|
+
"type": "object",
|
|
11354
|
+
"required": [
|
|
11355
|
+
"overview",
|
|
11356
|
+
"user",
|
|
11357
|
+
"rootRole",
|
|
11358
|
+
"projectRoles"
|
|
11359
|
+
],
|
|
11360
|
+
"additionalProperties": false,
|
|
11361
|
+
"description": "Describes the access overview (list of permissions and metadata) for a user.",
|
|
11362
|
+
"properties": {
|
|
11363
|
+
"overview": {
|
|
11364
|
+
"type": "object",
|
|
11365
|
+
"required": [
|
|
11366
|
+
"root",
|
|
11367
|
+
"project",
|
|
11368
|
+
"environment"
|
|
11369
|
+
],
|
|
11370
|
+
"additionalProperties": false,
|
|
11371
|
+
"description": "The access overview (list of permissions) for the user",
|
|
11372
|
+
"properties": {
|
|
11373
|
+
"root": {
|
|
11374
|
+
"type": "array",
|
|
11375
|
+
"description": "The list of root permissions",
|
|
11376
|
+
"items": {
|
|
11377
|
+
"type": "object",
|
|
11378
|
+
"required": [
|
|
11379
|
+
"id",
|
|
11380
|
+
"name",
|
|
11381
|
+
"displayName",
|
|
11382
|
+
"type",
|
|
11383
|
+
"hasPermission"
|
|
11384
|
+
],
|
|
11385
|
+
"additionalProperties": false,
|
|
11386
|
+
"properties": {
|
|
11387
|
+
"id": {
|
|
11388
|
+
"type": "integer",
|
|
11389
|
+
"description": "The ID of the permission",
|
|
11390
|
+
"example": 1
|
|
11391
|
+
},
|
|
11392
|
+
"name": {
|
|
11393
|
+
"type": "string",
|
|
11394
|
+
"description": "The name of the permission",
|
|
11395
|
+
"example": "CREATE_FEATURE_STRATEGY"
|
|
11396
|
+
},
|
|
11397
|
+
"displayName": {
|
|
11398
|
+
"type": "string",
|
|
11399
|
+
"description": "The display name of the permission",
|
|
11400
|
+
"example": "Create activation strategies"
|
|
11401
|
+
},
|
|
11402
|
+
"type": {
|
|
11403
|
+
"type": "string",
|
|
11404
|
+
"description": "The type of the permission",
|
|
11405
|
+
"example": "environment"
|
|
11406
|
+
},
|
|
11407
|
+
"environment": {
|
|
11408
|
+
"type": "string",
|
|
11409
|
+
"nullable": true,
|
|
11410
|
+
"description": "The environment that the permission applies to",
|
|
11411
|
+
"example": "dev"
|
|
11412
|
+
},
|
|
11413
|
+
"hasPermission": {
|
|
11414
|
+
"type": "boolean",
|
|
11415
|
+
"description": "Whether the user has this permission",
|
|
11416
|
+
"example": true
|
|
11417
|
+
}
|
|
11418
|
+
}
|
|
11419
|
+
}
|
|
11420
|
+
},
|
|
11421
|
+
"project": {
|
|
11422
|
+
"type": "array",
|
|
11423
|
+
"description": "The list of project permissions",
|
|
11424
|
+
"items": {
|
|
11425
|
+
"type": "object",
|
|
11426
|
+
"required": [
|
|
11427
|
+
"id",
|
|
11428
|
+
"name",
|
|
11429
|
+
"displayName",
|
|
11430
|
+
"type",
|
|
11431
|
+
"hasPermission"
|
|
11432
|
+
],
|
|
11433
|
+
"additionalProperties": false,
|
|
11434
|
+
"properties": {
|
|
11435
|
+
"id": {
|
|
11436
|
+
"type": "integer",
|
|
11437
|
+
"description": "The ID of the permission",
|
|
11438
|
+
"example": 1
|
|
11439
|
+
},
|
|
11440
|
+
"name": {
|
|
11441
|
+
"type": "string",
|
|
11442
|
+
"description": "The name of the permission",
|
|
11443
|
+
"example": "CREATE_FEATURE_STRATEGY"
|
|
11444
|
+
},
|
|
11445
|
+
"displayName": {
|
|
11446
|
+
"type": "string",
|
|
11447
|
+
"description": "The display name of the permission",
|
|
11448
|
+
"example": "Create activation strategies"
|
|
11449
|
+
},
|
|
11450
|
+
"type": {
|
|
11451
|
+
"type": "string",
|
|
11452
|
+
"description": "The type of the permission",
|
|
11453
|
+
"example": "environment"
|
|
11454
|
+
},
|
|
11455
|
+
"environment": {
|
|
11456
|
+
"type": "string",
|
|
11457
|
+
"nullable": true,
|
|
11458
|
+
"description": "The environment that the permission applies to",
|
|
11459
|
+
"example": "dev"
|
|
11460
|
+
},
|
|
11461
|
+
"hasPermission": {
|
|
11462
|
+
"type": "boolean",
|
|
11463
|
+
"description": "Whether the user has this permission",
|
|
11464
|
+
"example": true
|
|
11465
|
+
}
|
|
11466
|
+
}
|
|
11467
|
+
}
|
|
11468
|
+
},
|
|
11469
|
+
"environment": {
|
|
11470
|
+
"type": "array",
|
|
11471
|
+
"description": "The list of environment permissions",
|
|
11472
|
+
"items": {
|
|
11473
|
+
"type": "object",
|
|
11474
|
+
"required": [
|
|
11475
|
+
"id",
|
|
11476
|
+
"name",
|
|
11477
|
+
"displayName",
|
|
11478
|
+
"type",
|
|
11479
|
+
"hasPermission"
|
|
11480
|
+
],
|
|
11481
|
+
"additionalProperties": false,
|
|
11482
|
+
"properties": {
|
|
11483
|
+
"id": {
|
|
11484
|
+
"type": "integer",
|
|
11485
|
+
"description": "The ID of the permission",
|
|
11486
|
+
"example": 1
|
|
11487
|
+
},
|
|
11488
|
+
"name": {
|
|
11489
|
+
"type": "string",
|
|
11490
|
+
"description": "The name of the permission",
|
|
11491
|
+
"example": "CREATE_FEATURE_STRATEGY"
|
|
11492
|
+
},
|
|
11493
|
+
"displayName": {
|
|
11494
|
+
"type": "string",
|
|
11495
|
+
"description": "The display name of the permission",
|
|
11496
|
+
"example": "Create activation strategies"
|
|
11497
|
+
},
|
|
11498
|
+
"type": {
|
|
11499
|
+
"type": "string",
|
|
11500
|
+
"description": "The type of the permission",
|
|
11501
|
+
"example": "environment"
|
|
11502
|
+
},
|
|
11503
|
+
"environment": {
|
|
11504
|
+
"type": "string",
|
|
11505
|
+
"nullable": true,
|
|
11506
|
+
"description": "The environment that the permission applies to",
|
|
11507
|
+
"example": "dev"
|
|
11508
|
+
},
|
|
11509
|
+
"hasPermission": {
|
|
11510
|
+
"type": "boolean",
|
|
11511
|
+
"description": "Whether the user has this permission",
|
|
11512
|
+
"example": true
|
|
11513
|
+
}
|
|
11514
|
+
}
|
|
11515
|
+
}
|
|
11516
|
+
}
|
|
11517
|
+
}
|
|
11518
|
+
},
|
|
11519
|
+
"user": {
|
|
11520
|
+
"description": "The user that this access overview is for",
|
|
11521
|
+
"$ref": "#/components/schemas/userSchema"
|
|
11522
|
+
},
|
|
11523
|
+
"rootRole": {
|
|
11524
|
+
"description": "The name of the root role that this user has",
|
|
11525
|
+
"$ref": "#/components/schemas/roleSchema"
|
|
11526
|
+
},
|
|
11527
|
+
"projectRoles": {
|
|
11528
|
+
"type": "array",
|
|
11529
|
+
"description": "The list of project roles that this user has in the selected project",
|
|
11530
|
+
"items": {
|
|
11531
|
+
"type": "object",
|
|
11532
|
+
"required": [
|
|
11533
|
+
"id",
|
|
11534
|
+
"type",
|
|
11535
|
+
"name",
|
|
11536
|
+
"permissions"
|
|
11537
|
+
],
|
|
11538
|
+
"additionalProperties": false,
|
|
11539
|
+
"properties": {
|
|
11540
|
+
"id": {
|
|
11541
|
+
"type": "integer",
|
|
11542
|
+
"description": "The role id",
|
|
11543
|
+
"example": 9,
|
|
11544
|
+
"minimum": 0
|
|
11545
|
+
},
|
|
11546
|
+
"type": {
|
|
11547
|
+
"description": "A role can either be a global root role (applies to all projects) or a project role",
|
|
11548
|
+
"type": "string",
|
|
11549
|
+
"example": "root"
|
|
11550
|
+
},
|
|
11551
|
+
"name": {
|
|
11552
|
+
"description": "The name of the role",
|
|
11553
|
+
"type": "string",
|
|
11554
|
+
"example": "Editor"
|
|
11555
|
+
},
|
|
11556
|
+
"description": {
|
|
11557
|
+
"description": "A more detailed description of the role and what use it's intended for",
|
|
11558
|
+
"type": "string",
|
|
11559
|
+
"example": "Users with the editor role have access to most features in Unleash but can not manage users and roles in the global scope. Editors will be added as project owners when creating projects and get superuser rights within the context of these projects. Users with the editor role will also get access to most permissions on the default project by default."
|
|
11560
|
+
},
|
|
11561
|
+
"project": {
|
|
11562
|
+
"description": "What project the role belongs to",
|
|
11563
|
+
"type": "string",
|
|
11564
|
+
"nullable": true,
|
|
11565
|
+
"example": "default"
|
|
11566
|
+
},
|
|
11567
|
+
"permissions": {
|
|
11568
|
+
"type": "array",
|
|
11569
|
+
"description": "The permissions that this role has",
|
|
11570
|
+
"items": {
|
|
11571
|
+
"type": "object",
|
|
11572
|
+
"required": [
|
|
11573
|
+
"id",
|
|
11574
|
+
"name",
|
|
11575
|
+
"displayName",
|
|
11576
|
+
"type"
|
|
11577
|
+
],
|
|
11578
|
+
"additionalProperties": false,
|
|
11579
|
+
"properties": {
|
|
11580
|
+
"id": {
|
|
11581
|
+
"type": "integer",
|
|
11582
|
+
"description": "The ID of the permission",
|
|
11583
|
+
"example": 1
|
|
11584
|
+
},
|
|
11585
|
+
"name": {
|
|
11586
|
+
"type": "string",
|
|
11587
|
+
"description": "The name of the permission",
|
|
11588
|
+
"example": "CREATE_FEATURE_STRATEGY"
|
|
11589
|
+
},
|
|
11590
|
+
"displayName": {
|
|
11591
|
+
"type": "string",
|
|
11592
|
+
"description": "The display name of the permission",
|
|
11593
|
+
"example": "Create activation strategies"
|
|
11594
|
+
},
|
|
11595
|
+
"type": {
|
|
11596
|
+
"type": "string",
|
|
11597
|
+
"description": "The type of the permission",
|
|
11598
|
+
"example": "environment"
|
|
11599
|
+
},
|
|
11600
|
+
"environment": {
|
|
11601
|
+
"type": "string",
|
|
11602
|
+
"nullable": true,
|
|
11603
|
+
"description": "The environment that the permission applies to",
|
|
11604
|
+
"example": "dev"
|
|
11605
|
+
}
|
|
11606
|
+
}
|
|
11607
|
+
}
|
|
11608
|
+
}
|
|
11609
|
+
}
|
|
11610
|
+
}
|
|
11611
|
+
}
|
|
11612
|
+
}
|
|
11613
|
+
},
|
|
10938
11614
|
"userSchema": {
|
|
10939
11615
|
"type": "object",
|
|
10940
11616
|
"additionalProperties": false,
|
|
@@ -11169,7 +11845,7 @@
|
|
|
11169
11845
|
"required": [
|
|
11170
11846
|
"password"
|
|
11171
11847
|
],
|
|
11172
|
-
"description": "Used to validate passwords obeying [Unleash password guidelines](https://docs.getunleash.io/
|
|
11848
|
+
"description": "Used to validate passwords obeying [Unleash password guidelines](https://docs.getunleash.io/using-unleash/deploy/configuring-unleash#securing-unleash)",
|
|
11173
11849
|
"properties": {
|
|
11174
11850
|
"password": {
|
|
11175
11851
|
"description": "The password to validate",
|
|
@@ -11396,6 +12072,13 @@
|
|
|
11396
12072
|
"type": "string",
|
|
11397
12073
|
"description": "The instance identifier of the Unleash instance",
|
|
11398
12074
|
"example": "0d652a82-43db-4144-8e02-864b0b030710"
|
|
12075
|
+
},
|
|
12076
|
+
"buildDate": {
|
|
12077
|
+
"description": "The date and time of when this Unleash instance version was built",
|
|
12078
|
+
"type": "string",
|
|
12079
|
+
"format": "date-time",
|
|
12080
|
+
"nullable": true,
|
|
12081
|
+
"example": "2023-06-30T11:41:00.123Z"
|
|
11399
12082
|
}
|
|
11400
12083
|
}
|
|
11401
12084
|
},
|
|
@@ -11447,7 +12130,8 @@
|
|
|
11447
12130
|
"environment": {
|
|
11448
12131
|
"description": "Which environment this permission applies to",
|
|
11449
12132
|
"type": "string",
|
|
11450
|
-
"example": "development"
|
|
12133
|
+
"example": "development",
|
|
12134
|
+
"nullable": true
|
|
11451
12135
|
}
|
|
11452
12136
|
}
|
|
11453
12137
|
},
|
|
@@ -11593,6 +12277,13 @@
|
|
|
11593
12277
|
"sortOrder": {
|
|
11594
12278
|
"type": "integer",
|
|
11595
12279
|
"description": "Defines where in the list of environments to place this environment. The list uses an ascending sort, so lower numbers are shown first. You can change this value later."
|
|
12280
|
+
},
|
|
12281
|
+
"requiredApprovals": {
|
|
12282
|
+
"type": "integer",
|
|
12283
|
+
"description": "Experimental field. The number of approvals required before a change request can be applied in this environment.",
|
|
12284
|
+
"minimum": 1,
|
|
12285
|
+
"example": 3,
|
|
12286
|
+
"nullable": true
|
|
11596
12287
|
}
|
|
11597
12288
|
}
|
|
11598
12289
|
},
|
|
@@ -11645,8 +12336,7 @@
|
|
|
11645
12336
|
"type": "string",
|
|
11646
12337
|
"example": "production"
|
|
11647
12338
|
},
|
|
11648
|
-
"description": "A list of environments that should be enabled for this project.
|
|
11649
|
-
"minItems": 1,
|
|
12339
|
+
"description": "A list of environments that should be enabled for this project. If this property is missing, Unleash will default to enabling all non-deprecated environments for the project. An empty list will result in no environment enabled for the project.",
|
|
11650
12340
|
"example": [
|
|
11651
12341
|
"production",
|
|
11652
12342
|
"development"
|
|
@@ -12283,8 +12973,7 @@
|
|
|
12283
12973
|
"example": [
|
|
12284
12974
|
"production",
|
|
12285
12975
|
"staging"
|
|
12286
|
-
]
|
|
12287
|
-
"minItems": 1
|
|
12976
|
+
]
|
|
12288
12977
|
},
|
|
12289
12978
|
"changeRequestEnvironments": {
|
|
12290
12979
|
"type": "array",
|
|
@@ -12950,6 +13639,113 @@
|
|
|
12950
13639
|
"description": "The name of this action."
|
|
12951
13640
|
}
|
|
12952
13641
|
}
|
|
13642
|
+
},
|
|
13643
|
+
{
|
|
13644
|
+
"type": "object",
|
|
13645
|
+
"required": [
|
|
13646
|
+
"feature",
|
|
13647
|
+
"payload",
|
|
13648
|
+
"action"
|
|
13649
|
+
],
|
|
13650
|
+
"description": "Add a release plan to this feature environment.",
|
|
13651
|
+
"properties": {
|
|
13652
|
+
"feature": {
|
|
13653
|
+
"type": "string",
|
|
13654
|
+
"example": "my-best-feature",
|
|
13655
|
+
"description": "The name of the feature that this change applies to."
|
|
13656
|
+
},
|
|
13657
|
+
"action": {
|
|
13658
|
+
"type": "string",
|
|
13659
|
+
"enum": [
|
|
13660
|
+
"addReleasePlan"
|
|
13661
|
+
],
|
|
13662
|
+
"description": "The name of this action."
|
|
13663
|
+
},
|
|
13664
|
+
"payload": {
|
|
13665
|
+
"$ref": "#/components/schemas/releasePlanTemplateIdSchema",
|
|
13666
|
+
"type": "object"
|
|
13667
|
+
}
|
|
13668
|
+
}
|
|
13669
|
+
},
|
|
13670
|
+
{
|
|
13671
|
+
"type": "object",
|
|
13672
|
+
"required": [
|
|
13673
|
+
"feature",
|
|
13674
|
+
"payload",
|
|
13675
|
+
"action"
|
|
13676
|
+
],
|
|
13677
|
+
"description": "Start milestone of feature environment release plan.",
|
|
13678
|
+
"properties": {
|
|
13679
|
+
"feature": {
|
|
13680
|
+
"type": "string",
|
|
13681
|
+
"example": "my-best-feature",
|
|
13682
|
+
"description": "The name of the feature that this change applies to."
|
|
13683
|
+
},
|
|
13684
|
+
"action": {
|
|
13685
|
+
"type": "string",
|
|
13686
|
+
"enum": [
|
|
13687
|
+
"startMilestone"
|
|
13688
|
+
],
|
|
13689
|
+
"description": "The name of this action."
|
|
13690
|
+
},
|
|
13691
|
+
"payload": {
|
|
13692
|
+
"type": "object",
|
|
13693
|
+
"required": [
|
|
13694
|
+
"milestoneId",
|
|
13695
|
+
"planId"
|
|
13696
|
+
],
|
|
13697
|
+
"description": "The ID of the release plan and which of its milestones to start.",
|
|
13698
|
+
"properties": {
|
|
13699
|
+
"milestoneId": {
|
|
13700
|
+
"type": "string",
|
|
13701
|
+
"example": "01JB9GGTGQYEQ9D40R17T3YVW3",
|
|
13702
|
+
"description": "The ID of the milestone to start. This ID is an ulid"
|
|
13703
|
+
},
|
|
13704
|
+
"planId": {
|
|
13705
|
+
"type": "string",
|
|
13706
|
+
"example": "01JB9GGTGQYEQ9D40R17T3YVW3",
|
|
13707
|
+
"description": "The ID of the release plan. This ID is an ulid"
|
|
13708
|
+
}
|
|
13709
|
+
}
|
|
13710
|
+
}
|
|
13711
|
+
}
|
|
13712
|
+
},
|
|
13713
|
+
{
|
|
13714
|
+
"type": "object",
|
|
13715
|
+
"required": [
|
|
13716
|
+
"feature",
|
|
13717
|
+
"payload",
|
|
13718
|
+
"action"
|
|
13719
|
+
],
|
|
13720
|
+
"description": "Remove a release plan from feature environment.",
|
|
13721
|
+
"properties": {
|
|
13722
|
+
"feature": {
|
|
13723
|
+
"type": "string",
|
|
13724
|
+
"example": "my-best-feature",
|
|
13725
|
+
"description": "The name of the feature that this change applies to."
|
|
13726
|
+
},
|
|
13727
|
+
"action": {
|
|
13728
|
+
"type": "string",
|
|
13729
|
+
"enum": [
|
|
13730
|
+
"deleteReleasePlan"
|
|
13731
|
+
],
|
|
13732
|
+
"description": "The name of this action."
|
|
13733
|
+
},
|
|
13734
|
+
"payload": {
|
|
13735
|
+
"type": "object",
|
|
13736
|
+
"required": [
|
|
13737
|
+
"planId"
|
|
13738
|
+
],
|
|
13739
|
+
"description": "The Id of the release plan to remove.",
|
|
13740
|
+
"properties": {
|
|
13741
|
+
"planId": {
|
|
13742
|
+
"type": "string",
|
|
13743
|
+
"example": "01JB9GGTGQYEQ9D40R17T3YVW3",
|
|
13744
|
+
"description": "The Id of the release plan. This id is an ulid"
|
|
13745
|
+
}
|
|
13746
|
+
}
|
|
13747
|
+
}
|
|
13748
|
+
}
|
|
12953
13749
|
}
|
|
12954
13750
|
]
|
|
12955
13751
|
},
|
|
@@ -13296,6 +14092,113 @@
|
|
|
13296
14092
|
}
|
|
13297
14093
|
}
|
|
13298
14094
|
},
|
|
14095
|
+
{
|
|
14096
|
+
"type": "object",
|
|
14097
|
+
"required": [
|
|
14098
|
+
"feature",
|
|
14099
|
+
"payload",
|
|
14100
|
+
"action"
|
|
14101
|
+
],
|
|
14102
|
+
"description": "Add a release plan to this feature environment.",
|
|
14103
|
+
"properties": {
|
|
14104
|
+
"feature": {
|
|
14105
|
+
"type": "string",
|
|
14106
|
+
"example": "my-best-feature",
|
|
14107
|
+
"description": "The name of the feature that this change applies to."
|
|
14108
|
+
},
|
|
14109
|
+
"action": {
|
|
14110
|
+
"type": "string",
|
|
14111
|
+
"enum": [
|
|
14112
|
+
"addReleasePlan"
|
|
14113
|
+
],
|
|
14114
|
+
"description": "The name of this action."
|
|
14115
|
+
},
|
|
14116
|
+
"payload": {
|
|
14117
|
+
"$ref": "#/components/schemas/releasePlanTemplateIdSchema",
|
|
14118
|
+
"type": "object"
|
|
14119
|
+
}
|
|
14120
|
+
}
|
|
14121
|
+
},
|
|
14122
|
+
{
|
|
14123
|
+
"type": "object",
|
|
14124
|
+
"required": [
|
|
14125
|
+
"feature",
|
|
14126
|
+
"payload",
|
|
14127
|
+
"action"
|
|
14128
|
+
],
|
|
14129
|
+
"description": "Start milestone of feature environment release plan.",
|
|
14130
|
+
"properties": {
|
|
14131
|
+
"feature": {
|
|
14132
|
+
"type": "string",
|
|
14133
|
+
"example": "my-best-feature",
|
|
14134
|
+
"description": "The name of the feature that this change applies to."
|
|
14135
|
+
},
|
|
14136
|
+
"action": {
|
|
14137
|
+
"type": "string",
|
|
14138
|
+
"enum": [
|
|
14139
|
+
"startMilestone"
|
|
14140
|
+
],
|
|
14141
|
+
"description": "The name of this action."
|
|
14142
|
+
},
|
|
14143
|
+
"payload": {
|
|
14144
|
+
"type": "object",
|
|
14145
|
+
"required": [
|
|
14146
|
+
"milestoneId",
|
|
14147
|
+
"planId"
|
|
14148
|
+
],
|
|
14149
|
+
"description": "The ID of the release plan and which of its milestones to start.",
|
|
14150
|
+
"properties": {
|
|
14151
|
+
"milestoneId": {
|
|
14152
|
+
"type": "string",
|
|
14153
|
+
"example": "01JB9GGTGQYEQ9D40R17T3YVW3",
|
|
14154
|
+
"description": "The ID of the milestone to start. This ID is an ulid"
|
|
14155
|
+
},
|
|
14156
|
+
"planId": {
|
|
14157
|
+
"type": "string",
|
|
14158
|
+
"example": "01JB9GGTGQYEQ9D40R17T3YVW3",
|
|
14159
|
+
"description": "The ID of the release plan. This ID is an ulid"
|
|
14160
|
+
}
|
|
14161
|
+
}
|
|
14162
|
+
}
|
|
14163
|
+
}
|
|
14164
|
+
},
|
|
14165
|
+
{
|
|
14166
|
+
"type": "object",
|
|
14167
|
+
"required": [
|
|
14168
|
+
"feature",
|
|
14169
|
+
"payload",
|
|
14170
|
+
"action"
|
|
14171
|
+
],
|
|
14172
|
+
"description": "Remove a release plan from feature environment.",
|
|
14173
|
+
"properties": {
|
|
14174
|
+
"feature": {
|
|
14175
|
+
"type": "string",
|
|
14176
|
+
"example": "my-best-feature",
|
|
14177
|
+
"description": "The name of the feature that this change applies to."
|
|
14178
|
+
},
|
|
14179
|
+
"action": {
|
|
14180
|
+
"type": "string",
|
|
14181
|
+
"enum": [
|
|
14182
|
+
"deleteReleasePlan"
|
|
14183
|
+
],
|
|
14184
|
+
"description": "The name of this action."
|
|
14185
|
+
},
|
|
14186
|
+
"payload": {
|
|
14187
|
+
"type": "object",
|
|
14188
|
+
"required": [
|
|
14189
|
+
"planId"
|
|
14190
|
+
],
|
|
14191
|
+
"description": "The Id of the release plan to remove.",
|
|
14192
|
+
"properties": {
|
|
14193
|
+
"planId": {
|
|
14194
|
+
"type": "string",
|
|
14195
|
+
"example": "01JB9GGTGQYEQ9D40R17T3YVW3",
|
|
14196
|
+
"description": "The Id of the release plan. This id is an ulid"
|
|
14197
|
+
}
|
|
14198
|
+
}
|
|
14199
|
+
}
|
|
14200
|
+
}
|
|
14201
|
+
},
|
|
13299
14202
|
{
|
|
13300
14203
|
"type": "array",
|
|
13301
14204
|
"items": {
|
|
@@ -13618,6 +14521,113 @@
|
|
|
13618
14521
|
"description": "The name of this action."
|
|
13619
14522
|
}
|
|
13620
14523
|
}
|
|
14524
|
+
},
|
|
14525
|
+
{
|
|
14526
|
+
"type": "object",
|
|
14527
|
+
"required": [
|
|
14528
|
+
"feature",
|
|
14529
|
+
"payload",
|
|
14530
|
+
"action"
|
|
14531
|
+
],
|
|
14532
|
+
"description": "Add a release plan to this feature environment.",
|
|
14533
|
+
"properties": {
|
|
14534
|
+
"feature": {
|
|
14535
|
+
"type": "string",
|
|
14536
|
+
"example": "my-best-feature",
|
|
14537
|
+
"description": "The name of the feature that this change applies to."
|
|
14538
|
+
},
|
|
14539
|
+
"action": {
|
|
14540
|
+
"type": "string",
|
|
14541
|
+
"enum": [
|
|
14542
|
+
"addReleasePlan"
|
|
14543
|
+
],
|
|
14544
|
+
"description": "The name of this action."
|
|
14545
|
+
},
|
|
14546
|
+
"payload": {
|
|
14547
|
+
"$ref": "#/components/schemas/releasePlanTemplateIdSchema",
|
|
14548
|
+
"type": "object"
|
|
14549
|
+
}
|
|
14550
|
+
}
|
|
14551
|
+
},
|
|
14552
|
+
{
|
|
14553
|
+
"type": "object",
|
|
14554
|
+
"required": [
|
|
14555
|
+
"feature",
|
|
14556
|
+
"payload",
|
|
14557
|
+
"action"
|
|
14558
|
+
],
|
|
14559
|
+
"description": "Start milestone of feature environment release plan.",
|
|
14560
|
+
"properties": {
|
|
14561
|
+
"feature": {
|
|
14562
|
+
"type": "string",
|
|
14563
|
+
"example": "my-best-feature",
|
|
14564
|
+
"description": "The name of the feature that this change applies to."
|
|
14565
|
+
},
|
|
14566
|
+
"action": {
|
|
14567
|
+
"type": "string",
|
|
14568
|
+
"enum": [
|
|
14569
|
+
"startMilestone"
|
|
14570
|
+
],
|
|
14571
|
+
"description": "The name of this action."
|
|
14572
|
+
},
|
|
14573
|
+
"payload": {
|
|
14574
|
+
"type": "object",
|
|
14575
|
+
"required": [
|
|
14576
|
+
"milestoneId",
|
|
14577
|
+
"planId"
|
|
14578
|
+
],
|
|
14579
|
+
"description": "The ID of the release plan and which of its milestones to start.",
|
|
14580
|
+
"properties": {
|
|
14581
|
+
"milestoneId": {
|
|
14582
|
+
"type": "string",
|
|
14583
|
+
"example": "01JB9GGTGQYEQ9D40R17T3YVW3",
|
|
14584
|
+
"description": "The ID of the milestone to start. This ID is an ulid"
|
|
14585
|
+
},
|
|
14586
|
+
"planId": {
|
|
14587
|
+
"type": "string",
|
|
14588
|
+
"example": "01JB9GGTGQYEQ9D40R17T3YVW3",
|
|
14589
|
+
"description": "The ID of the release plan. This ID is an ulid"
|
|
14590
|
+
}
|
|
14591
|
+
}
|
|
14592
|
+
}
|
|
14593
|
+
}
|
|
14594
|
+
},
|
|
14595
|
+
{
|
|
14596
|
+
"type": "object",
|
|
14597
|
+
"required": [
|
|
14598
|
+
"feature",
|
|
14599
|
+
"payload",
|
|
14600
|
+
"action"
|
|
14601
|
+
],
|
|
14602
|
+
"description": "Remove a release plan from feature environment.",
|
|
14603
|
+
"properties": {
|
|
14604
|
+
"feature": {
|
|
14605
|
+
"type": "string",
|
|
14606
|
+
"example": "my-best-feature",
|
|
14607
|
+
"description": "The name of the feature that this change applies to."
|
|
14608
|
+
},
|
|
14609
|
+
"action": {
|
|
14610
|
+
"type": "string",
|
|
14611
|
+
"enum": [
|
|
14612
|
+
"deleteReleasePlan"
|
|
14613
|
+
],
|
|
14614
|
+
"description": "The name of this action."
|
|
14615
|
+
},
|
|
14616
|
+
"payload": {
|
|
14617
|
+
"type": "object",
|
|
14618
|
+
"required": [
|
|
14619
|
+
"planId"
|
|
14620
|
+
],
|
|
14621
|
+
"description": "The Id of the release plan to remove.",
|
|
14622
|
+
"properties": {
|
|
14623
|
+
"planId": {
|
|
14624
|
+
"type": "string",
|
|
14625
|
+
"example": "01JB9GGTGQYEQ9D40R17T3YVW3",
|
|
14626
|
+
"description": "The Id of the release plan. This id is an ulid"
|
|
14627
|
+
}
|
|
14628
|
+
}
|
|
14629
|
+
}
|
|
14630
|
+
}
|
|
13621
14631
|
}
|
|
13622
14632
|
]
|
|
13623
14633
|
},
|
|
@@ -14762,6 +15772,13 @@
|
|
|
14762
15772
|
"sortOrder": {
|
|
14763
15773
|
"type": "integer",
|
|
14764
15774
|
"description": "Changes the sort order of this environment."
|
|
15775
|
+
},
|
|
15776
|
+
"requiredApprovals": {
|
|
15777
|
+
"type": "integer",
|
|
15778
|
+
"description": "Experimental field. The number of approvals required before a change request can be applied in this environment.",
|
|
15779
|
+
"minimum": 1,
|
|
15780
|
+
"example": 3,
|
|
15781
|
+
"nullable": true
|
|
14765
15782
|
}
|
|
14766
15783
|
}
|
|
14767
15784
|
},
|
|
@@ -15913,17 +16930,33 @@
|
|
|
15913
16930
|
"type": "object",
|
|
15914
16931
|
"additionalProperties": false,
|
|
15915
16932
|
"required": [
|
|
15916
|
-
"
|
|
16933
|
+
"isValid"
|
|
15917
16934
|
],
|
|
15918
16935
|
"properties": {
|
|
15919
16936
|
"token": {
|
|
15920
16937
|
"description": "The actual license token.",
|
|
15921
16938
|
"type": "string"
|
|
15922
16939
|
},
|
|
16940
|
+
"isValid": {
|
|
16941
|
+
"description": "Whether the license is valid or not.",
|
|
16942
|
+
"type": "boolean"
|
|
16943
|
+
},
|
|
15923
16944
|
"customer": {
|
|
15924
16945
|
"description": "Name of the customer that owns the license. This is the name of the company that purchased the license.",
|
|
15925
16946
|
"type": "string"
|
|
15926
16947
|
},
|
|
16948
|
+
"type": {
|
|
16949
|
+
"description": "Type of license.",
|
|
16950
|
+
"type": "string"
|
|
16951
|
+
},
|
|
16952
|
+
"instanceName": {
|
|
16953
|
+
"description": "Name of the Unleash instance where this license is valid.",
|
|
16954
|
+
"type": "string"
|
|
16955
|
+
},
|
|
16956
|
+
"instanceId": {
|
|
16957
|
+
"description": "Identifier of the Unleash instance where this license is valid.",
|
|
16958
|
+
"type": "string"
|
|
16959
|
+
},
|
|
15927
16960
|
"plan": {
|
|
15928
16961
|
"description": "Name of plan that the license is for.",
|
|
15929
16962
|
"type": "string"
|
|
@@ -15937,6 +16970,12 @@
|
|
|
15937
16970
|
"type": "string",
|
|
15938
16971
|
"format": "date-time",
|
|
15939
16972
|
"example": "2023-07-31T13:33:02Z"
|
|
16973
|
+
},
|
|
16974
|
+
"issuedAt": {
|
|
16975
|
+
"description": "Date when the license was issued.",
|
|
16976
|
+
"type": "string",
|
|
16977
|
+
"format": "date-time",
|
|
16978
|
+
"example": "2023-07-31T13:33:02Z"
|
|
15940
16979
|
}
|
|
15941
16980
|
}
|
|
15942
16981
|
},
|
|
@@ -15956,6 +16995,16 @@
|
|
|
15956
16995
|
"description": "Message describing the current state of the Unleash license",
|
|
15957
16996
|
"type": "string",
|
|
15958
16997
|
"example": "Your license expired 3 days ago"
|
|
16998
|
+
},
|
|
16999
|
+
"messageType": {
|
|
17000
|
+
"description": "Type of messages, whether it is an informative or a warning",
|
|
17001
|
+
"type": "string",
|
|
17002
|
+
"example": "info",
|
|
17003
|
+
"enum": [
|
|
17004
|
+
"info",
|
|
17005
|
+
"warning",
|
|
17006
|
+
"error"
|
|
17007
|
+
]
|
|
15959
17008
|
}
|
|
15960
17009
|
}
|
|
15961
17010
|
},
|
|
@@ -17174,6 +18223,66 @@
|
|
|
17174
18223
|
}
|
|
17175
18224
|
}
|
|
17176
18225
|
},
|
|
18226
|
+
"trafficUsageApiMonthlyDataSchema": {
|
|
18227
|
+
"type": "object",
|
|
18228
|
+
"additionalProperties": false,
|
|
18229
|
+
"description": "Contains the recorded data usage for each API path, segmented by month and type of traffic",
|
|
18230
|
+
"required": [
|
|
18231
|
+
"months",
|
|
18232
|
+
"apiPath"
|
|
18233
|
+
],
|
|
18234
|
+
"properties": {
|
|
18235
|
+
"months": {
|
|
18236
|
+
"type": "array",
|
|
18237
|
+
"description": "An array containing each month in the selected range that has data usage recorded",
|
|
18238
|
+
"items": {
|
|
18239
|
+
"type": "object",
|
|
18240
|
+
"properties": {
|
|
18241
|
+
"month": {
|
|
18242
|
+
"type": "string",
|
|
18243
|
+
"pattern": "^[0-9]{4}-[0-9]{2}$",
|
|
18244
|
+
"example": "2023-04",
|
|
18245
|
+
"description": "The month this data usage is recorded for"
|
|
18246
|
+
},
|
|
18247
|
+
"trafficTypes": {
|
|
18248
|
+
"type": "array",
|
|
18249
|
+
"description": "Contains the recorded data usage for each type of traffic group",
|
|
18250
|
+
"items": {
|
|
18251
|
+
"type": "object",
|
|
18252
|
+
"properties": {
|
|
18253
|
+
"group": {
|
|
18254
|
+
"type": "string",
|
|
18255
|
+
"description": "The traffic group",
|
|
18256
|
+
"example": "successful-requests"
|
|
18257
|
+
},
|
|
18258
|
+
"count": {
|
|
18259
|
+
"type": "number",
|
|
18260
|
+
"description": "The number of requests",
|
|
18261
|
+
"example": 100
|
|
18262
|
+
}
|
|
18263
|
+
},
|
|
18264
|
+
"required": [
|
|
18265
|
+
"group",
|
|
18266
|
+
"count"
|
|
18267
|
+
],
|
|
18268
|
+
"additionalProperties": false
|
|
18269
|
+
}
|
|
18270
|
+
}
|
|
18271
|
+
},
|
|
18272
|
+
"required": [
|
|
18273
|
+
"month",
|
|
18274
|
+
"trafficTypes"
|
|
18275
|
+
],
|
|
18276
|
+
"additionalProperties": false
|
|
18277
|
+
}
|
|
18278
|
+
},
|
|
18279
|
+
"apiPath": {
|
|
18280
|
+
"type": "string",
|
|
18281
|
+
"description": "The path of the API that the recorded data usage is for",
|
|
18282
|
+
"example": "/api/client/features"
|
|
18283
|
+
}
|
|
18284
|
+
}
|
|
18285
|
+
},
|
|
17177
18286
|
"trafficUsageDataSegmentedSchema": {
|
|
17178
18287
|
"type": "object",
|
|
17179
18288
|
"additionalProperties": false,
|
|
@@ -17197,6 +18306,292 @@
|
|
|
17197
18306
|
}
|
|
17198
18307
|
}
|
|
17199
18308
|
},
|
|
18309
|
+
"trafficUsageDataSegmentedCombinedSchema": {
|
|
18310
|
+
"type": "object",
|
|
18311
|
+
"description": "Contains the recorded data usage for each API path, segmented by day/month and type of traffic",
|
|
18312
|
+
"required": [
|
|
18313
|
+
"dateRange",
|
|
18314
|
+
"apiData",
|
|
18315
|
+
"grouping"
|
|
18316
|
+
],
|
|
18317
|
+
"additionalProperties": false,
|
|
18318
|
+
"properties": {
|
|
18319
|
+
"grouping": {
|
|
18320
|
+
"type": "string",
|
|
18321
|
+
"enum": [
|
|
18322
|
+
"monthly",
|
|
18323
|
+
"daily"
|
|
18324
|
+
],
|
|
18325
|
+
"description": "Whether the data is aggregated by month or by day.",
|
|
18326
|
+
"example": "monthly"
|
|
18327
|
+
},
|
|
18328
|
+
"dateRange": {
|
|
18329
|
+
"type": "object",
|
|
18330
|
+
"required": [
|
|
18331
|
+
"from",
|
|
18332
|
+
"to"
|
|
18333
|
+
],
|
|
18334
|
+
"additionalProperties": false,
|
|
18335
|
+
"description": "The date range there is data for. The range is inclusive and goes from the start of the `from` date to the end of the `to` date",
|
|
18336
|
+
"properties": {
|
|
18337
|
+
"from": {
|
|
18338
|
+
"type": "string",
|
|
18339
|
+
"format": "date",
|
|
18340
|
+
"example": "2023-04-01",
|
|
18341
|
+
"description": "The start of the dateRange"
|
|
18342
|
+
},
|
|
18343
|
+
"to": {
|
|
18344
|
+
"type": "string",
|
|
18345
|
+
"format": "date",
|
|
18346
|
+
"example": "2023-04-30",
|
|
18347
|
+
"description": "The end of the dateRange"
|
|
18348
|
+
}
|
|
18349
|
+
}
|
|
18350
|
+
},
|
|
18351
|
+
"apiData": {
|
|
18352
|
+
"type": "array",
|
|
18353
|
+
"description": "Contains the recorded daily/monthly data usage for each API path",
|
|
18354
|
+
"items": {
|
|
18355
|
+
"type": "object",
|
|
18356
|
+
"required": [
|
|
18357
|
+
"apiPath",
|
|
18358
|
+
"dataPoints"
|
|
18359
|
+
],
|
|
18360
|
+
"additionalProperties": false,
|
|
18361
|
+
"properties": {
|
|
18362
|
+
"apiPath": {
|
|
18363
|
+
"type": "string",
|
|
18364
|
+
"example": "/api/client",
|
|
18365
|
+
"description": "The API path"
|
|
18366
|
+
},
|
|
18367
|
+
"dataPoints": {
|
|
18368
|
+
"type": "array",
|
|
18369
|
+
"description": "The recorded data points for the API path",
|
|
18370
|
+
"items": {
|
|
18371
|
+
"type": "object",
|
|
18372
|
+
"required": [
|
|
18373
|
+
"period",
|
|
18374
|
+
"trafficTypes"
|
|
18375
|
+
],
|
|
18376
|
+
"additionalProperties": false,
|
|
18377
|
+
"properties": {
|
|
18378
|
+
"period": {
|
|
18379
|
+
"type": "string",
|
|
18380
|
+
"pattern": "^\\d{4}-\\d{2}(-\\d{2})?$",
|
|
18381
|
+
"example": "2023-04-01",
|
|
18382
|
+
"description": "The date of the data point. Formatted as a full date (e.g. 2023-04-01) if the data is aggregated by day or as a month (e.g. 2023-04) if the data is aggregated by month."
|
|
18383
|
+
},
|
|
18384
|
+
"trafficTypes": {
|
|
18385
|
+
"type": "array",
|
|
18386
|
+
"items": {
|
|
18387
|
+
"type": "object",
|
|
18388
|
+
"required": [
|
|
18389
|
+
"group",
|
|
18390
|
+
"count"
|
|
18391
|
+
],
|
|
18392
|
+
"additionalProperties": false,
|
|
18393
|
+
"properties": {
|
|
18394
|
+
"group": {
|
|
18395
|
+
"type": "string",
|
|
18396
|
+
"example": "successful-requests",
|
|
18397
|
+
"description": "The type of traffic"
|
|
18398
|
+
},
|
|
18399
|
+
"count": {
|
|
18400
|
+
"type": "integer",
|
|
18401
|
+
"minimum": 0,
|
|
18402
|
+
"example": 42,
|
|
18403
|
+
"description": "The number of requests"
|
|
18404
|
+
}
|
|
18405
|
+
}
|
|
18406
|
+
},
|
|
18407
|
+
"description": "The recorded traffic types for the data point"
|
|
18408
|
+
}
|
|
18409
|
+
}
|
|
18410
|
+
}
|
|
18411
|
+
}
|
|
18412
|
+
}
|
|
18413
|
+
}
|
|
18414
|
+
}
|
|
18415
|
+
}
|
|
18416
|
+
},
|
|
18417
|
+
"meteredConnectionsSchema": {
|
|
18418
|
+
"type": "object",
|
|
18419
|
+
"description": "Contains the recorded metered groups connections segmented by day/month",
|
|
18420
|
+
"required": [
|
|
18421
|
+
"dateRange",
|
|
18422
|
+
"apiData",
|
|
18423
|
+
"grouping"
|
|
18424
|
+
],
|
|
18425
|
+
"additionalProperties": false,
|
|
18426
|
+
"properties": {
|
|
18427
|
+
"grouping": {
|
|
18428
|
+
"type": "string",
|
|
18429
|
+
"enum": [
|
|
18430
|
+
"monthly",
|
|
18431
|
+
"daily"
|
|
18432
|
+
],
|
|
18433
|
+
"description": "Whether the data is aggregated by month or by day.",
|
|
18434
|
+
"example": "monthly"
|
|
18435
|
+
},
|
|
18436
|
+
"dateRange": {
|
|
18437
|
+
"type": "object",
|
|
18438
|
+
"required": [
|
|
18439
|
+
"from",
|
|
18440
|
+
"to"
|
|
18441
|
+
],
|
|
18442
|
+
"additionalProperties": false,
|
|
18443
|
+
"description": "The date range there is data for. The range is inclusive and goes from the start of the `from` date to the end of the `to` date",
|
|
18444
|
+
"properties": {
|
|
18445
|
+
"from": {
|
|
18446
|
+
"type": "string",
|
|
18447
|
+
"format": "date",
|
|
18448
|
+
"example": "2023-04-01",
|
|
18449
|
+
"description": "The start of the dateRange"
|
|
18450
|
+
},
|
|
18451
|
+
"to": {
|
|
18452
|
+
"type": "string",
|
|
18453
|
+
"format": "date",
|
|
18454
|
+
"example": "2023-04-30",
|
|
18455
|
+
"description": "The end of the dateRange"
|
|
18456
|
+
}
|
|
18457
|
+
}
|
|
18458
|
+
},
|
|
18459
|
+
"apiData": {
|
|
18460
|
+
"type": "array",
|
|
18461
|
+
"description": "Contains the recorded daily/monthly connections for each metered group",
|
|
18462
|
+
"items": {
|
|
18463
|
+
"type": "object",
|
|
18464
|
+
"required": [
|
|
18465
|
+
"meteredGroup",
|
|
18466
|
+
"dataPoints"
|
|
18467
|
+
],
|
|
18468
|
+
"additionalProperties": false,
|
|
18469
|
+
"properties": {
|
|
18470
|
+
"meteredGroup": {
|
|
18471
|
+
"type": "string",
|
|
18472
|
+
"example": "default",
|
|
18473
|
+
"description": "The metered group representing charging unit in the organization using Unleash"
|
|
18474
|
+
},
|
|
18475
|
+
"dataPoints": {
|
|
18476
|
+
"type": "array",
|
|
18477
|
+
"description": "The recorded data points for the metered group",
|
|
18478
|
+
"items": {
|
|
18479
|
+
"type": "object",
|
|
18480
|
+
"required": [
|
|
18481
|
+
"period",
|
|
18482
|
+
"connections"
|
|
18483
|
+
],
|
|
18484
|
+
"additionalProperties": false,
|
|
18485
|
+
"properties": {
|
|
18486
|
+
"period": {
|
|
18487
|
+
"type": "string",
|
|
18488
|
+
"pattern": "^\\d{4}-\\d{2}(-\\d{2})?$",
|
|
18489
|
+
"example": "2023-04-01",
|
|
18490
|
+
"description": "The date of the data point. Formatted as a full date (e.g. 2023-04-01) if the data is aggregated by day or as a month (e.g. 2023-04) if the data is aggregated by month."
|
|
18491
|
+
},
|
|
18492
|
+
"connections": {
|
|
18493
|
+
"type": "number",
|
|
18494
|
+
"minimum": 0,
|
|
18495
|
+
"example": 10.5,
|
|
18496
|
+
"description": "Number of connections. 1 connection = 7200 backend SDK requests per day"
|
|
18497
|
+
}
|
|
18498
|
+
}
|
|
18499
|
+
}
|
|
18500
|
+
}
|
|
18501
|
+
}
|
|
18502
|
+
}
|
|
18503
|
+
}
|
|
18504
|
+
}
|
|
18505
|
+
},
|
|
18506
|
+
"meteredRequestsSchema": {
|
|
18507
|
+
"type": "object",
|
|
18508
|
+
"description": "Contains the recorded metered groups requests segmented by day/month",
|
|
18509
|
+
"required": [
|
|
18510
|
+
"dateRange",
|
|
18511
|
+
"apiData",
|
|
18512
|
+
"grouping"
|
|
18513
|
+
],
|
|
18514
|
+
"additionalProperties": false,
|
|
18515
|
+
"properties": {
|
|
18516
|
+
"grouping": {
|
|
18517
|
+
"type": "string",
|
|
18518
|
+
"enum": [
|
|
18519
|
+
"monthly",
|
|
18520
|
+
"daily"
|
|
18521
|
+
],
|
|
18522
|
+
"description": "Whether the data is aggregated by month or by day.",
|
|
18523
|
+
"example": "monthly"
|
|
18524
|
+
},
|
|
18525
|
+
"dateRange": {
|
|
18526
|
+
"type": "object",
|
|
18527
|
+
"required": [
|
|
18528
|
+
"from",
|
|
18529
|
+
"to"
|
|
18530
|
+
],
|
|
18531
|
+
"additionalProperties": false,
|
|
18532
|
+
"description": "The date range there is data for. The range is inclusive and goes from the start of the `from` date to the end of the `to` date",
|
|
18533
|
+
"properties": {
|
|
18534
|
+
"from": {
|
|
18535
|
+
"type": "string",
|
|
18536
|
+
"format": "date",
|
|
18537
|
+
"example": "2023-04-01",
|
|
18538
|
+
"description": "The start of the dateRange"
|
|
18539
|
+
},
|
|
18540
|
+
"to": {
|
|
18541
|
+
"type": "string",
|
|
18542
|
+
"format": "date",
|
|
18543
|
+
"example": "2023-04-30",
|
|
18544
|
+
"description": "The end of the dateRange"
|
|
18545
|
+
}
|
|
18546
|
+
}
|
|
18547
|
+
},
|
|
18548
|
+
"apiData": {
|
|
18549
|
+
"type": "array",
|
|
18550
|
+
"description": "Contains the recorded daily/monthly requests for each metered group",
|
|
18551
|
+
"items": {
|
|
18552
|
+
"type": "object",
|
|
18553
|
+
"required": [
|
|
18554
|
+
"meteredGroup",
|
|
18555
|
+
"dataPoints"
|
|
18556
|
+
],
|
|
18557
|
+
"additionalProperties": false,
|
|
18558
|
+
"properties": {
|
|
18559
|
+
"meteredGroup": {
|
|
18560
|
+
"type": "string",
|
|
18561
|
+
"example": "default",
|
|
18562
|
+
"description": "The metered group representing charging unit in the organization using Unleash"
|
|
18563
|
+
},
|
|
18564
|
+
"dataPoints": {
|
|
18565
|
+
"type": "array",
|
|
18566
|
+
"description": "The recorded data points for the metered group",
|
|
18567
|
+
"items": {
|
|
18568
|
+
"type": "object",
|
|
18569
|
+
"required": [
|
|
18570
|
+
"period",
|
|
18571
|
+
"requests"
|
|
18572
|
+
],
|
|
18573
|
+
"additionalProperties": false,
|
|
18574
|
+
"properties": {
|
|
18575
|
+
"period": {
|
|
18576
|
+
"type": "string",
|
|
18577
|
+
"pattern": "^\\d{4}-\\d{2}(-\\d{2})?$",
|
|
18578
|
+
"example": "2023-04-01",
|
|
18579
|
+
"description": "The date of the data point. Formatted as a full date (e.g. 2023-04-01) if the data is aggregated by day or as a month (e.g. 2023-04) if the data is aggregated by month."
|
|
18580
|
+
},
|
|
18581
|
+
"requests": {
|
|
18582
|
+
"type": "number",
|
|
18583
|
+
"minimum": 0,
|
|
18584
|
+
"example": 1200,
|
|
18585
|
+
"description": "Number of requests"
|
|
18586
|
+
}
|
|
18587
|
+
}
|
|
18588
|
+
}
|
|
18589
|
+
}
|
|
18590
|
+
}
|
|
18591
|
+
}
|
|
18592
|
+
}
|
|
18593
|
+
}
|
|
18594
|
+
},
|
|
17200
18595
|
"scimSettingsSchema": {
|
|
17201
18596
|
"type": "object",
|
|
17202
18597
|
"required": [
|
|
@@ -17652,6 +19047,13 @@
|
|
|
17652
19047
|
"items": {
|
|
17653
19048
|
"$ref": "#/components/schemas/releasePlanMilestoneSchema"
|
|
17654
19049
|
}
|
|
19050
|
+
},
|
|
19051
|
+
"archivedAt": {
|
|
19052
|
+
"type": "string",
|
|
19053
|
+
"format": "date-time",
|
|
19054
|
+
"description": "The date and time that the release template was archived.",
|
|
19055
|
+
"example": "2022-01-01T00:00:00Z",
|
|
19056
|
+
"nullable": true
|
|
17655
19057
|
}
|
|
17656
19058
|
}
|
|
17657
19059
|
},
|
|
@@ -18081,6 +19483,353 @@
|
|
|
18081
19483
|
"nullable": false
|
|
18082
19484
|
}
|
|
18083
19485
|
}
|
|
19486
|
+
},
|
|
19487
|
+
"edgeEndpointTrafficSchema": {
|
|
19488
|
+
"type": "object",
|
|
19489
|
+
"description": "Represents traffic data for a single endpoint in Edge",
|
|
19490
|
+
"additionalProperties": false,
|
|
19491
|
+
"properties": {
|
|
19492
|
+
"requests200": {
|
|
19493
|
+
"description": "Number of 20x requests",
|
|
19494
|
+
"type": "number",
|
|
19495
|
+
"minimum": 0
|
|
19496
|
+
},
|
|
19497
|
+
"requests304": {
|
|
19498
|
+
"description": "Number of 30x requests",
|
|
19499
|
+
"type": "number",
|
|
19500
|
+
"minimum": 0
|
|
19501
|
+
}
|
|
19502
|
+
}
|
|
19503
|
+
},
|
|
19504
|
+
"edgeInstanceDataSchema": {
|
|
19505
|
+
"description": "Represents Edge instance observability data.",
|
|
19506
|
+
"type": "object",
|
|
19507
|
+
"required": [
|
|
19508
|
+
"identifier",
|
|
19509
|
+
"appName",
|
|
19510
|
+
"edgeVersion",
|
|
19511
|
+
"started",
|
|
19512
|
+
"traffic",
|
|
19513
|
+
"latencyUpstream",
|
|
19514
|
+
"connectedStreamingClients",
|
|
19515
|
+
"connectedEdges"
|
|
19516
|
+
],
|
|
19517
|
+
"properties": {
|
|
19518
|
+
"identifier": {
|
|
19519
|
+
"type": "string",
|
|
19520
|
+
"description": "The ID of the Edge process, typically a ULID. Newly generated for each restart of the instance.",
|
|
19521
|
+
"example": "01ARZ3NDEKTSV4RRFFQ69G5FAV"
|
|
19522
|
+
},
|
|
19523
|
+
"appName": {
|
|
19524
|
+
"type": "string",
|
|
19525
|
+
"description": "The name of the application, configured by the user, typically persistent across restarts of Edge.",
|
|
19526
|
+
"example": "unleash-edge-us-east-1"
|
|
19527
|
+
},
|
|
19528
|
+
"region": {
|
|
19529
|
+
"type": "string",
|
|
19530
|
+
"nullable": true,
|
|
19531
|
+
"description": "Which region the Edge instance is running in. Set to AWS_REGION by default (if present).",
|
|
19532
|
+
"example": "us-east-1"
|
|
19533
|
+
},
|
|
19534
|
+
"edgeVersion": {
|
|
19535
|
+
"type": "string",
|
|
19536
|
+
"description": "Which version (semver) of Edge is the Edge instance running.",
|
|
19537
|
+
"example": "19.6.3"
|
|
19538
|
+
},
|
|
19539
|
+
"processMetrics": {
|
|
19540
|
+
"type": "object",
|
|
19541
|
+
"$ref": "#/components/schemas/edgeProcessMetricsSchema",
|
|
19542
|
+
"nullable": true
|
|
19543
|
+
},
|
|
19544
|
+
"started": {
|
|
19545
|
+
"type": "string",
|
|
19546
|
+
"format": "date-time",
|
|
19547
|
+
"description": "RFC3339 timestamp for when the Edge instance was started."
|
|
19548
|
+
},
|
|
19549
|
+
"traffic": {
|
|
19550
|
+
"type": "object",
|
|
19551
|
+
"$ref": "#/components/schemas/edgeInstanceTrafficSchema"
|
|
19552
|
+
},
|
|
19553
|
+
"latencyUpstream": {
|
|
19554
|
+
"type": "object",
|
|
19555
|
+
"$ref": "#/components/schemas/edgeUpstreamLatencySchema"
|
|
19556
|
+
},
|
|
19557
|
+
"connectedStreamingClients": {
|
|
19558
|
+
"type": "number",
|
|
19559
|
+
"minimum": 0,
|
|
19560
|
+
"description": "How many streaming clients are connected to the Edge instance."
|
|
19561
|
+
},
|
|
19562
|
+
"connectedEdges": {
|
|
19563
|
+
"type": "array",
|
|
19564
|
+
"description": "A list of Edge instances connected to the Edge instance.",
|
|
19565
|
+
"items": {
|
|
19566
|
+
"$ref": "#/components/schemas/edgeInstanceDataSchema"
|
|
19567
|
+
}
|
|
19568
|
+
},
|
|
19569
|
+
"requestsSinceLastReport": {
|
|
19570
|
+
"type": "object",
|
|
19571
|
+
"description": "Requests made to edge's endpoints since last report. Meant to be used for billing purposes.",
|
|
19572
|
+
"$ref": "#/components/schemas/edgeRequestStatsSchema"
|
|
19573
|
+
},
|
|
19574
|
+
"connectionConsumptionSinceLastReport": {
|
|
19575
|
+
"type": "object",
|
|
19576
|
+
"description": "Connection consumption data since last report, including features and metrics consumption. Used for long-lived backend SDKs with backend controlled number of instances.",
|
|
19577
|
+
"$ref": "#/components/schemas/connectionConsumptionSchema"
|
|
19578
|
+
},
|
|
19579
|
+
"requestConsumptionSinceLastReport": {
|
|
19580
|
+
"type": "array",
|
|
19581
|
+
"description": "Request consumption data since last report, grouped by metered group. User for frontend SDKs with unpredictable and potentially large number of user devices running those SDKs.",
|
|
19582
|
+
"$ref": "#/components/schemas/requestConsumptionSchema"
|
|
19583
|
+
}
|
|
19584
|
+
}
|
|
19585
|
+
},
|
|
19586
|
+
"edgeInstanceTrafficSchema": {
|
|
19587
|
+
"description": "Represents requests to the Edge instance (/api/client/features, /api/frontend, etc.)",
|
|
19588
|
+
"type": "object",
|
|
19589
|
+
"additionalProperties": false,
|
|
19590
|
+
"required": [
|
|
19591
|
+
"get",
|
|
19592
|
+
"post",
|
|
19593
|
+
"accessDenied",
|
|
19594
|
+
"cachedResponses"
|
|
19595
|
+
],
|
|
19596
|
+
"properties": {
|
|
19597
|
+
"get": {
|
|
19598
|
+
"type": "object",
|
|
19599
|
+
"description": "A map containing GET requests.",
|
|
19600
|
+
"additionalProperties": {
|
|
19601
|
+
"type": "object",
|
|
19602
|
+
"nullable": true,
|
|
19603
|
+
"$ref": "#/components/schemas/edgeLatencyMetricsSchema"
|
|
19604
|
+
}
|
|
19605
|
+
},
|
|
19606
|
+
"post": {
|
|
19607
|
+
"type": "object",
|
|
19608
|
+
"description": "A map containing POST requests.",
|
|
19609
|
+
"additionalProperties": {
|
|
19610
|
+
"type": "object",
|
|
19611
|
+
"nullable": true,
|
|
19612
|
+
"$ref": "#/components/schemas/edgeLatencyMetricsSchema"
|
|
19613
|
+
}
|
|
19614
|
+
},
|
|
19615
|
+
"accessDenied": {
|
|
19616
|
+
"type": "object",
|
|
19617
|
+
"description": "A map containing requests that were denied.",
|
|
19618
|
+
"additionalProperties": {
|
|
19619
|
+
"type": "object",
|
|
19620
|
+
"nullable": true,
|
|
19621
|
+
"$ref": "#/components/schemas/edgeLatencyMetricsSchema"
|
|
19622
|
+
}
|
|
19623
|
+
},
|
|
19624
|
+
"cachedResponses": {
|
|
19625
|
+
"type": "object",
|
|
19626
|
+
"description": "A map containing requests that had cached responses.",
|
|
19627
|
+
"additionalProperties": {
|
|
19628
|
+
"type": "object",
|
|
19629
|
+
"nullable": true,
|
|
19630
|
+
"$ref": "#/components/schemas/edgeLatencyMetricsSchema"
|
|
19631
|
+
}
|
|
19632
|
+
}
|
|
19633
|
+
}
|
|
19634
|
+
},
|
|
19635
|
+
"edgeLatencyMetricsSchema": {
|
|
19636
|
+
"description": "Representing latency for an Edge operation.",
|
|
19637
|
+
"type": "object",
|
|
19638
|
+
"additionalProperties": false,
|
|
19639
|
+
"required": [
|
|
19640
|
+
"avg",
|
|
19641
|
+
"count",
|
|
19642
|
+
"p99"
|
|
19643
|
+
],
|
|
19644
|
+
"properties": {
|
|
19645
|
+
"avg": {
|
|
19646
|
+
"type": "number",
|
|
19647
|
+
"description": "Average time per request in milliseconds.",
|
|
19648
|
+
"minimum": 0
|
|
19649
|
+
},
|
|
19650
|
+
"count": {
|
|
19651
|
+
"type": "number",
|
|
19652
|
+
"description": "Total number of requests made.",
|
|
19653
|
+
"minimum": 0
|
|
19654
|
+
},
|
|
19655
|
+
"p99": {
|
|
19656
|
+
"type": "number",
|
|
19657
|
+
"description": "99% of requests finished within this amount of milliseconds.",
|
|
19658
|
+
"minimum": 0,
|
|
19659
|
+
"example": 34.5
|
|
19660
|
+
}
|
|
19661
|
+
}
|
|
19662
|
+
},
|
|
19663
|
+
"edgeProcessMetricsSchema": {
|
|
19664
|
+
"description": "Represents Edge instance resource usage data.",
|
|
19665
|
+
"type": "object",
|
|
19666
|
+
"required": [
|
|
19667
|
+
"cpuUsage",
|
|
19668
|
+
"memoryUsage"
|
|
19669
|
+
],
|
|
19670
|
+
"properties": {
|
|
19671
|
+
"cpuUsage": {
|
|
19672
|
+
"type": "number",
|
|
19673
|
+
"description": "CPU usage, in seconds, since start of process.",
|
|
19674
|
+
"minimum": 0,
|
|
19675
|
+
"example": 54.54
|
|
19676
|
+
},
|
|
19677
|
+
"memoryUsage": {
|
|
19678
|
+
"type": "number",
|
|
19679
|
+
"description": "Current process_resident_memory (in bytes) usage.",
|
|
19680
|
+
"minimum": 0,
|
|
19681
|
+
"example": 34000432
|
|
19682
|
+
}
|
|
19683
|
+
}
|
|
19684
|
+
},
|
|
19685
|
+
"edgeRequestStatsSchema": {
|
|
19686
|
+
"description": "Represents Edge traffic data.",
|
|
19687
|
+
"type": "object",
|
|
19688
|
+
"properties": {
|
|
19689
|
+
"/api/client/features": {
|
|
19690
|
+
"description": "20x and 30x requests to the client features endpoint",
|
|
19691
|
+
"type": "object",
|
|
19692
|
+
"$ref": "#/components/schemas/edgeEndpointTrafficSchema"
|
|
19693
|
+
},
|
|
19694
|
+
"/api/frontend": {
|
|
19695
|
+
"description": "Traffic to the frontend endpoint",
|
|
19696
|
+
"type": "object",
|
|
19697
|
+
"$ref": "#/components/schemas/edgeEndpointTrafficSchema"
|
|
19698
|
+
},
|
|
19699
|
+
"/api/proxy": {
|
|
19700
|
+
"description": "Traffic to the proxy endpoint (proxy endpoint is deprecated, use /api/frontend instead)",
|
|
19701
|
+
"type": "object",
|
|
19702
|
+
"$ref": "#/components/schemas/edgeEndpointTrafficSchema"
|
|
19703
|
+
},
|
|
19704
|
+
"/api/client/metrics": {
|
|
19705
|
+
"description": "Traffic to Edge Metrics (from SDKs)",
|
|
19706
|
+
"type": "object",
|
|
19707
|
+
"$ref": "#/components/schemas/edgeEndpointTrafficSchema"
|
|
19708
|
+
},
|
|
19709
|
+
"/api/client/metrics/bulk": {
|
|
19710
|
+
"description": "Traffic to Edge Metrics (from other Edge instances)",
|
|
19711
|
+
"type": "object",
|
|
19712
|
+
"$ref": "#/components/schemas/edgeEndpointTrafficSchema"
|
|
19713
|
+
},
|
|
19714
|
+
"/api/client/metrics/edge": {
|
|
19715
|
+
"description": "Traffic to Edge Metrics (from other Edge instances)",
|
|
19716
|
+
"type": "object",
|
|
19717
|
+
"$ref": "#/components/schemas/edgeEndpointTrafficSchema"
|
|
19718
|
+
}
|
|
19719
|
+
}
|
|
19720
|
+
},
|
|
19721
|
+
"edgeUpstreamLatencySchema": {
|
|
19722
|
+
"description": "Latencies for upstream actions from Edge (downloading/syncing new features, uploading metrics, uploading instance data)",
|
|
19723
|
+
"type": "object",
|
|
19724
|
+
"additionalProperties": false,
|
|
19725
|
+
"required": [
|
|
19726
|
+
"features",
|
|
19727
|
+
"metrics",
|
|
19728
|
+
"edge"
|
|
19729
|
+
],
|
|
19730
|
+
"properties": {
|
|
19731
|
+
"features": {
|
|
19732
|
+
"$ref": "#/components/schemas/edgeLatencyMetricsSchema"
|
|
19733
|
+
},
|
|
19734
|
+
"metrics": {
|
|
19735
|
+
"$ref": "#/components/schemas/edgeLatencyMetricsSchema"
|
|
19736
|
+
},
|
|
19737
|
+
"edge": {
|
|
19738
|
+
"$ref": "#/components/schemas/edgeLatencyMetricsSchema"
|
|
19739
|
+
}
|
|
19740
|
+
}
|
|
19741
|
+
},
|
|
19742
|
+
"connectionConsumptionSchema": {
|
|
19743
|
+
"type": "object",
|
|
19744
|
+
"required": [
|
|
19745
|
+
"features",
|
|
19746
|
+
"metrics"
|
|
19747
|
+
],
|
|
19748
|
+
"properties": {
|
|
19749
|
+
"features": {
|
|
19750
|
+
"type": "array",
|
|
19751
|
+
"items": {
|
|
19752
|
+
"$ref": "#/components/schemas/meteredGroupConsumptionSchema"
|
|
19753
|
+
},
|
|
19754
|
+
"description": "Feature consumption data points"
|
|
19755
|
+
},
|
|
19756
|
+
"metrics": {
|
|
19757
|
+
"type": "array",
|
|
19758
|
+
"items": {
|
|
19759
|
+
"$ref": "#/components/schemas/meteredGroupConsumptionSchema"
|
|
19760
|
+
},
|
|
19761
|
+
"description": "Metrics consumption data points"
|
|
19762
|
+
}
|
|
19763
|
+
}
|
|
19764
|
+
},
|
|
19765
|
+
"consumptionDataPointSchema": {
|
|
19766
|
+
"type": "object",
|
|
19767
|
+
"required": [
|
|
19768
|
+
"interval",
|
|
19769
|
+
"requests"
|
|
19770
|
+
],
|
|
19771
|
+
"properties": {
|
|
19772
|
+
"interval": {
|
|
19773
|
+
"type": "array",
|
|
19774
|
+
"items": {
|
|
19775
|
+
"type": "integer"
|
|
19776
|
+
},
|
|
19777
|
+
"minItems": 2,
|
|
19778
|
+
"maxItems": 2,
|
|
19779
|
+
"description": "Time interval in milliseconds [start, end].",
|
|
19780
|
+
"example": [
|
|
19781
|
+
0,
|
|
19782
|
+
15000
|
|
19783
|
+
]
|
|
19784
|
+
},
|
|
19785
|
+
"requests": {
|
|
19786
|
+
"type": "number",
|
|
19787
|
+
"description": "Number of requests in this interval"
|
|
19788
|
+
}
|
|
19789
|
+
}
|
|
19790
|
+
},
|
|
19791
|
+
"meteredGroupConsumptionSchema": {
|
|
19792
|
+
"type": "object",
|
|
19793
|
+
"required": [
|
|
19794
|
+
"meteredGroup",
|
|
19795
|
+
"dataPoints"
|
|
19796
|
+
],
|
|
19797
|
+
"properties": {
|
|
19798
|
+
"meteredGroup": {
|
|
19799
|
+
"type": "string",
|
|
19800
|
+
"description": "Name of the metered group",
|
|
19801
|
+
"example": "default"
|
|
19802
|
+
},
|
|
19803
|
+
"dataPoints": {
|
|
19804
|
+
"type": "array",
|
|
19805
|
+
"items": {
|
|
19806
|
+
"$ref": "#/components/schemas/consumptionDataPointSchema"
|
|
19807
|
+
},
|
|
19808
|
+
"description": "Array of consumption data points"
|
|
19809
|
+
}
|
|
19810
|
+
}
|
|
19811
|
+
},
|
|
19812
|
+
"requestConsumptionSchema": {
|
|
19813
|
+
"type": "array",
|
|
19814
|
+
"items": {
|
|
19815
|
+
"type": "object",
|
|
19816
|
+
"required": [
|
|
19817
|
+
"meteredGroup",
|
|
19818
|
+
"requests"
|
|
19819
|
+
],
|
|
19820
|
+
"properties": {
|
|
19821
|
+
"meteredGroup": {
|
|
19822
|
+
"type": "string",
|
|
19823
|
+
"description": "Name of the metered group",
|
|
19824
|
+
"example": "default"
|
|
19825
|
+
},
|
|
19826
|
+
"requests": {
|
|
19827
|
+
"type": "number",
|
|
19828
|
+
"description": "Total number of requests for this metered group",
|
|
19829
|
+
"example": 10000
|
|
19830
|
+
}
|
|
19831
|
+
}
|
|
19832
|
+
}
|
|
18084
19833
|
}
|
|
18085
19834
|
}
|
|
18086
19835
|
},
|
|
@@ -18147,7 +19896,7 @@
|
|
|
18147
19896
|
},
|
|
18148
19897
|
{
|
|
18149
19898
|
"name": "Frontend API",
|
|
18150
|
-
"description": "API for connecting client-side (frontend) applications to Unleash."
|
|
19899
|
+
"description": "The [Frontend API](https://docs.getunleash.io/reference/front-end-api) is used for connecting client-side (frontend) applications to Unleash."
|
|
18151
19900
|
},
|
|
18152
19901
|
{
|
|
18153
19902
|
"name": "Import/Export",
|
|
@@ -21341,14 +23090,75 @@
|
|
|
21341
23090
|
}
|
|
21342
23091
|
}
|
|
21343
23092
|
},
|
|
23093
|
+
"/api/admin/metrics/traffic-search": {
|
|
23094
|
+
"get": {
|
|
23095
|
+
"tags": [
|
|
23096
|
+
"Unstable"
|
|
23097
|
+
],
|
|
23098
|
+
"operationId": "getTrafficDataUsageForPeriod",
|
|
23099
|
+
"summary": "Get aggregated traffic data for a given time period.",
|
|
23100
|
+
"description": "Gets traffic usage data for the selected period, either aggregated by day or by month.",
|
|
23101
|
+
"parameters": [
|
|
23102
|
+
{
|
|
23103
|
+
"name": "grouping",
|
|
23104
|
+
"in": "query",
|
|
23105
|
+
"required": true,
|
|
23106
|
+
"schema": {
|
|
23107
|
+
"type": "string",
|
|
23108
|
+
"enum": [
|
|
23109
|
+
"daily",
|
|
23110
|
+
"monthly"
|
|
23111
|
+
],
|
|
23112
|
+
"example": "daily"
|
|
23113
|
+
},
|
|
23114
|
+
"description": "Whether to aggregate the data by month or by day"
|
|
23115
|
+
},
|
|
23116
|
+
{
|
|
23117
|
+
"name": "from",
|
|
23118
|
+
"schema": {
|
|
23119
|
+
"type": "string",
|
|
23120
|
+
"format": "date",
|
|
23121
|
+
"example": "2024-01-01"
|
|
23122
|
+
},
|
|
23123
|
+
"description": "The starting date of the traffic data usage search in IS:yyyy-MM-dd format",
|
|
23124
|
+
"in": "query",
|
|
23125
|
+
"required": true
|
|
23126
|
+
},
|
|
23127
|
+
{
|
|
23128
|
+
"name": "to",
|
|
23129
|
+
"schema": {
|
|
23130
|
+
"type": "string",
|
|
23131
|
+
"example": "2024-01-31",
|
|
23132
|
+
"format": "date"
|
|
23133
|
+
},
|
|
23134
|
+
"description": "The starting date of the traffic data usage search in IS:yyyy-MM-dd format",
|
|
23135
|
+
"in": "query",
|
|
23136
|
+
"required": true
|
|
23137
|
+
}
|
|
23138
|
+
],
|
|
23139
|
+
"responses": {
|
|
23140
|
+
"200": {
|
|
23141
|
+
"description": "trafficUsageDataSegmentedCombinedSchema",
|
|
23142
|
+
"content": {
|
|
23143
|
+
"application/json": {
|
|
23144
|
+
"schema": {
|
|
23145
|
+
"$ref": "#/components/schemas/trafficUsageDataSegmentedCombinedSchema"
|
|
23146
|
+
}
|
|
23147
|
+
}
|
|
23148
|
+
}
|
|
23149
|
+
}
|
|
23150
|
+
}
|
|
23151
|
+
}
|
|
23152
|
+
},
|
|
21344
23153
|
"/api/admin/metrics/traffic/{period}": {
|
|
21345
23154
|
"get": {
|
|
21346
23155
|
"tags": [
|
|
21347
23156
|
"Metrics"
|
|
21348
23157
|
],
|
|
23158
|
+
"deprecated": true,
|
|
21349
23159
|
"operationId": "getTrafficUsageDataForPeriod",
|
|
21350
23160
|
"summary": "Gets traffic usage data for selected period",
|
|
21351
|
-
"description": "Gets traffic usage data numbers per API for a period given by the parameter",
|
|
23161
|
+
"description": "Gets traffic usage data numbers per API for a period given by the parameter. This endpoint is deprecated. Use /traffic-search instead.",
|
|
21352
23162
|
"responses": {
|
|
21353
23163
|
"200": {
|
|
21354
23164
|
"description": "trafficUsageDataSegmentedSchema",
|
|
@@ -21373,6 +23183,126 @@
|
|
|
21373
23183
|
]
|
|
21374
23184
|
}
|
|
21375
23185
|
},
|
|
23186
|
+
"/api/admin/metrics/connection": {
|
|
23187
|
+
"get": {
|
|
23188
|
+
"tags": [
|
|
23189
|
+
"Unstable"
|
|
23190
|
+
],
|
|
23191
|
+
"operationId": "getConnectionsForPeriod",
|
|
23192
|
+
"summary": "Get aggregated metered connections for a given time period.",
|
|
23193
|
+
"description": "Gets metered connections count for the selected period, either aggregated by day or by month.",
|
|
23194
|
+
"parameters": [
|
|
23195
|
+
{
|
|
23196
|
+
"name": "grouping",
|
|
23197
|
+
"in": "query",
|
|
23198
|
+
"required": true,
|
|
23199
|
+
"schema": {
|
|
23200
|
+
"type": "string",
|
|
23201
|
+
"enum": [
|
|
23202
|
+
"daily",
|
|
23203
|
+
"monthly"
|
|
23204
|
+
],
|
|
23205
|
+
"example": "daily"
|
|
23206
|
+
},
|
|
23207
|
+
"description": "Whether to aggregate the data by month or by day"
|
|
23208
|
+
},
|
|
23209
|
+
{
|
|
23210
|
+
"name": "from",
|
|
23211
|
+
"schema": {
|
|
23212
|
+
"type": "string",
|
|
23213
|
+
"format": "date",
|
|
23214
|
+
"example": "2024-01-01"
|
|
23215
|
+
},
|
|
23216
|
+
"description": "The starting date of the traffic data usage search in IS:yyyy-MM-dd format",
|
|
23217
|
+
"in": "query",
|
|
23218
|
+
"required": true
|
|
23219
|
+
},
|
|
23220
|
+
{
|
|
23221
|
+
"name": "to",
|
|
23222
|
+
"schema": {
|
|
23223
|
+
"type": "string",
|
|
23224
|
+
"example": "2024-01-31",
|
|
23225
|
+
"format": "date"
|
|
23226
|
+
},
|
|
23227
|
+
"description": "The starting date of the traffic data usage search in IS:yyyy-MM-dd format",
|
|
23228
|
+
"in": "query",
|
|
23229
|
+
"required": true
|
|
23230
|
+
}
|
|
23231
|
+
],
|
|
23232
|
+
"responses": {
|
|
23233
|
+
"200": {
|
|
23234
|
+
"description": "meteredConnectionsSchema",
|
|
23235
|
+
"content": {
|
|
23236
|
+
"application/json": {
|
|
23237
|
+
"schema": {
|
|
23238
|
+
"$ref": "#/components/schemas/meteredConnectionsSchema"
|
|
23239
|
+
}
|
|
23240
|
+
}
|
|
23241
|
+
}
|
|
23242
|
+
}
|
|
23243
|
+
}
|
|
23244
|
+
}
|
|
23245
|
+
},
|
|
23246
|
+
"/api/admin/metrics/request": {
|
|
23247
|
+
"get": {
|
|
23248
|
+
"tags": [
|
|
23249
|
+
"Unstable"
|
|
23250
|
+
],
|
|
23251
|
+
"operationId": "getRequestsForPeriod",
|
|
23252
|
+
"summary": "Get aggregated metered requests for a given time period.",
|
|
23253
|
+
"description": "Gets metered requests count for the selected period, either aggregated by day or by month.",
|
|
23254
|
+
"parameters": [
|
|
23255
|
+
{
|
|
23256
|
+
"name": "grouping",
|
|
23257
|
+
"in": "query",
|
|
23258
|
+
"required": true,
|
|
23259
|
+
"schema": {
|
|
23260
|
+
"type": "string",
|
|
23261
|
+
"enum": [
|
|
23262
|
+
"daily",
|
|
23263
|
+
"monthly"
|
|
23264
|
+
],
|
|
23265
|
+
"example": "daily"
|
|
23266
|
+
},
|
|
23267
|
+
"description": "Whether to aggregate the data by month or by day"
|
|
23268
|
+
},
|
|
23269
|
+
{
|
|
23270
|
+
"name": "from",
|
|
23271
|
+
"schema": {
|
|
23272
|
+
"type": "string",
|
|
23273
|
+
"format": "date",
|
|
23274
|
+
"example": "2024-01-01"
|
|
23275
|
+
},
|
|
23276
|
+
"description": "The starting date of the traffic data usage search in IS:yyyy-MM-dd format",
|
|
23277
|
+
"in": "query",
|
|
23278
|
+
"required": true
|
|
23279
|
+
},
|
|
23280
|
+
{
|
|
23281
|
+
"name": "to",
|
|
23282
|
+
"schema": {
|
|
23283
|
+
"type": "string",
|
|
23284
|
+
"example": "2024-01-31",
|
|
23285
|
+
"format": "date"
|
|
23286
|
+
},
|
|
23287
|
+
"description": "The starting date of the traffic data usage search in IS:yyyy-MM-dd format",
|
|
23288
|
+
"in": "query",
|
|
23289
|
+
"required": true
|
|
23290
|
+
}
|
|
23291
|
+
],
|
|
23292
|
+
"responses": {
|
|
23293
|
+
"200": {
|
|
23294
|
+
"description": "meteredRequestsSchema",
|
|
23295
|
+
"content": {
|
|
23296
|
+
"application/json": {
|
|
23297
|
+
"schema": {
|
|
23298
|
+
"$ref": "#/components/schemas/meteredRequestsSchema"
|
|
23299
|
+
}
|
|
23300
|
+
}
|
|
23301
|
+
}
|
|
23302
|
+
}
|
|
23303
|
+
}
|
|
23304
|
+
}
|
|
23305
|
+
},
|
|
21376
23306
|
"/api/admin/notifications": {
|
|
21377
23307
|
"get": {
|
|
21378
23308
|
"summary": "Retrieves a list of notifications",
|
|
@@ -22094,7 +24024,7 @@
|
|
|
22094
24024
|
"Auth"
|
|
22095
24025
|
],
|
|
22096
24026
|
"summary": "Validates password",
|
|
22097
|
-
"description": "Verifies that the password adheres to the [Unleash password guidelines](https://docs.getunleash.io/
|
|
24027
|
+
"description": "Verifies that the password adheres to the [Unleash password guidelines](https://docs.getunleash.io/using-unleash/deploy/configuring-unleash#securing-unleash)",
|
|
22098
24028
|
"operationId": "validatePassword",
|
|
22099
24029
|
"requestBody": {
|
|
22100
24030
|
"description": "validatePasswordSchema",
|
|
@@ -23214,170 +25144,6 @@
|
|
|
23214
25144
|
]
|
|
23215
25145
|
}
|
|
23216
25146
|
},
|
|
23217
|
-
"/api/admin/archive/features": {
|
|
23218
|
-
"get": {
|
|
23219
|
-
"tags": [
|
|
23220
|
-
"Archive"
|
|
23221
|
-
],
|
|
23222
|
-
"summary": "Get archived features",
|
|
23223
|
-
"description": "Retrieve a list of all [archived feature flags](https://docs.getunleash.io/reference/feature-toggles#archive-a-feature-flag).",
|
|
23224
|
-
"operationId": "getArchivedFeatures",
|
|
23225
|
-
"responses": {
|
|
23226
|
-
"200": {
|
|
23227
|
-
"description": "archivedFeaturesSchema",
|
|
23228
|
-
"content": {
|
|
23229
|
-
"application/json": {
|
|
23230
|
-
"schema": {
|
|
23231
|
-
"$ref": "#/components/schemas/archivedFeaturesSchema"
|
|
23232
|
-
}
|
|
23233
|
-
}
|
|
23234
|
-
}
|
|
23235
|
-
},
|
|
23236
|
-
"401": {
|
|
23237
|
-
"description": "Authorization information is missing or invalid. Provide a valid API token as the `authorization` header, e.g. `authorization:*.*.my-admin-token`.",
|
|
23238
|
-
"content": {
|
|
23239
|
-
"application/json": {
|
|
23240
|
-
"schema": {
|
|
23241
|
-
"type": "object",
|
|
23242
|
-
"properties": {
|
|
23243
|
-
"id": {
|
|
23244
|
-
"type": "string",
|
|
23245
|
-
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
23246
|
-
"description": "The ID of the error instance"
|
|
23247
|
-
},
|
|
23248
|
-
"name": {
|
|
23249
|
-
"type": "string",
|
|
23250
|
-
"example": "AuthenticationRequired",
|
|
23251
|
-
"description": "The name of the error kind"
|
|
23252
|
-
},
|
|
23253
|
-
"message": {
|
|
23254
|
-
"type": "string",
|
|
23255
|
-
"example": "You must log in to use Unleash. Your request had no authorization header, so we could not authorize you. Try logging in at /auth/simple/login.",
|
|
23256
|
-
"description": "A description of what went wrong."
|
|
23257
|
-
}
|
|
23258
|
-
}
|
|
23259
|
-
}
|
|
23260
|
-
}
|
|
23261
|
-
}
|
|
23262
|
-
},
|
|
23263
|
-
"403": {
|
|
23264
|
-
"description": "The provided user credentials are valid, but the user does not have the necessary permissions to perform this operation",
|
|
23265
|
-
"content": {
|
|
23266
|
-
"application/json": {
|
|
23267
|
-
"schema": {
|
|
23268
|
-
"type": "object",
|
|
23269
|
-
"properties": {
|
|
23270
|
-
"id": {
|
|
23271
|
-
"type": "string",
|
|
23272
|
-
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
23273
|
-
"description": "The ID of the error instance"
|
|
23274
|
-
},
|
|
23275
|
-
"name": {
|
|
23276
|
-
"type": "string",
|
|
23277
|
-
"example": "NoAccessError",
|
|
23278
|
-
"description": "The name of the error kind"
|
|
23279
|
-
},
|
|
23280
|
-
"message": {
|
|
23281
|
-
"type": "string",
|
|
23282
|
-
"example": "You need the \"UPDATE_ADDON\" permission to perform this action in the \"development\" environment.",
|
|
23283
|
-
"description": "A description of what went wrong."
|
|
23284
|
-
}
|
|
23285
|
-
}
|
|
23286
|
-
}
|
|
23287
|
-
}
|
|
23288
|
-
}
|
|
23289
|
-
}
|
|
23290
|
-
},
|
|
23291
|
-
"deprecated": true
|
|
23292
|
-
}
|
|
23293
|
-
},
|
|
23294
|
-
"/api/admin/archive/features/{projectId}": {
|
|
23295
|
-
"get": {
|
|
23296
|
-
"tags": [
|
|
23297
|
-
"Archive"
|
|
23298
|
-
],
|
|
23299
|
-
"operationId": "getArchivedFeaturesByProjectId",
|
|
23300
|
-
"summary": "Get archived features in project",
|
|
23301
|
-
"description": "Retrieves a list of archived features that belong to the provided project.",
|
|
23302
|
-
"responses": {
|
|
23303
|
-
"200": {
|
|
23304
|
-
"description": "archivedFeaturesSchema",
|
|
23305
|
-
"content": {
|
|
23306
|
-
"application/json": {
|
|
23307
|
-
"schema": {
|
|
23308
|
-
"$ref": "#/components/schemas/archivedFeaturesSchema"
|
|
23309
|
-
}
|
|
23310
|
-
}
|
|
23311
|
-
}
|
|
23312
|
-
},
|
|
23313
|
-
"401": {
|
|
23314
|
-
"description": "Authorization information is missing or invalid. Provide a valid API token as the `authorization` header, e.g. `authorization:*.*.my-admin-token`.",
|
|
23315
|
-
"content": {
|
|
23316
|
-
"application/json": {
|
|
23317
|
-
"schema": {
|
|
23318
|
-
"type": "object",
|
|
23319
|
-
"properties": {
|
|
23320
|
-
"id": {
|
|
23321
|
-
"type": "string",
|
|
23322
|
-
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
23323
|
-
"description": "The ID of the error instance"
|
|
23324
|
-
},
|
|
23325
|
-
"name": {
|
|
23326
|
-
"type": "string",
|
|
23327
|
-
"example": "AuthenticationRequired",
|
|
23328
|
-
"description": "The name of the error kind"
|
|
23329
|
-
},
|
|
23330
|
-
"message": {
|
|
23331
|
-
"type": "string",
|
|
23332
|
-
"example": "You must log in to use Unleash. Your request had no authorization header, so we could not authorize you. Try logging in at /auth/simple/login.",
|
|
23333
|
-
"description": "A description of what went wrong."
|
|
23334
|
-
}
|
|
23335
|
-
}
|
|
23336
|
-
}
|
|
23337
|
-
}
|
|
23338
|
-
}
|
|
23339
|
-
},
|
|
23340
|
-
"403": {
|
|
23341
|
-
"description": "The provided user credentials are valid, but the user does not have the necessary permissions to perform this operation",
|
|
23342
|
-
"content": {
|
|
23343
|
-
"application/json": {
|
|
23344
|
-
"schema": {
|
|
23345
|
-
"type": "object",
|
|
23346
|
-
"properties": {
|
|
23347
|
-
"id": {
|
|
23348
|
-
"type": "string",
|
|
23349
|
-
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
23350
|
-
"description": "The ID of the error instance"
|
|
23351
|
-
},
|
|
23352
|
-
"name": {
|
|
23353
|
-
"type": "string",
|
|
23354
|
-
"example": "NoAccessError",
|
|
23355
|
-
"description": "The name of the error kind"
|
|
23356
|
-
},
|
|
23357
|
-
"message": {
|
|
23358
|
-
"type": "string",
|
|
23359
|
-
"example": "You need the \"UPDATE_ADDON\" permission to perform this action in the \"development\" environment.",
|
|
23360
|
-
"description": "A description of what went wrong."
|
|
23361
|
-
}
|
|
23362
|
-
}
|
|
23363
|
-
}
|
|
23364
|
-
}
|
|
23365
|
-
}
|
|
23366
|
-
}
|
|
23367
|
-
},
|
|
23368
|
-
"deprecated": true,
|
|
23369
|
-
"parameters": [
|
|
23370
|
-
{
|
|
23371
|
-
"name": "projectId",
|
|
23372
|
-
"in": "path",
|
|
23373
|
-
"required": true,
|
|
23374
|
-
"schema": {
|
|
23375
|
-
"type": "string"
|
|
23376
|
-
}
|
|
23377
|
-
}
|
|
23378
|
-
]
|
|
23379
|
-
}
|
|
23380
|
-
},
|
|
23381
25147
|
"/api/admin/archive/{featureName}": {
|
|
23382
25148
|
"delete": {
|
|
23383
25149
|
"tags": [
|
|
@@ -24734,6 +26500,28 @@
|
|
|
24734
26500
|
"summary": "Batch evaluate an Unleash context against a set of environments and projects."
|
|
24735
26501
|
}
|
|
24736
26502
|
},
|
|
26503
|
+
"/api/admin/metrics/unknown-flags": {
|
|
26504
|
+
"get": {
|
|
26505
|
+
"operationId": "getUnknownFlags",
|
|
26506
|
+
"tags": [
|
|
26507
|
+
"Unstable"
|
|
26508
|
+
],
|
|
26509
|
+
"summary": "Get latest reported unknown flag names",
|
|
26510
|
+
"description": "Returns a list of unknown flag names reported in the last 24 hours, if any. Maximum of 10.",
|
|
26511
|
+
"responses": {
|
|
26512
|
+
"200": {
|
|
26513
|
+
"description": "unknownFlagsResponseSchema",
|
|
26514
|
+
"content": {
|
|
26515
|
+
"application/json": {
|
|
26516
|
+
"schema": {
|
|
26517
|
+
"$ref": "#/components/schemas/unknownFlagsResponseSchema"
|
|
26518
|
+
}
|
|
26519
|
+
}
|
|
26520
|
+
}
|
|
26521
|
+
}
|
|
26522
|
+
}
|
|
26523
|
+
}
|
|
26524
|
+
},
|
|
24737
26525
|
"/api/admin/metrics/applications/{appName}": {
|
|
24738
26526
|
"post": {
|
|
24739
26527
|
"tags": [
|
|
@@ -25119,8 +26907,8 @@
|
|
|
25119
26907
|
"Metrics"
|
|
25120
26908
|
],
|
|
25121
26909
|
"operationId": "getApplicationEnvironmentInstances",
|
|
25122
|
-
"summary": "Get application environment instances",
|
|
25123
|
-
"description": "Returns an overview of the instances for the given `appName` and `environment` that
|
|
26910
|
+
"summary": "Get application environment instances (Last 24h)",
|
|
26911
|
+
"description": "Returns an overview of the instances for the given `appName` and `environment` that have received traffic in the last 24 hours.",
|
|
25124
26912
|
"responses": {
|
|
25125
26913
|
"200": {
|
|
25126
26914
|
"description": "applicationEnvironmentInstancesSchema",
|
|
@@ -25678,7 +27466,7 @@
|
|
|
25678
27466
|
],
|
|
25679
27467
|
"operationId": "getPats",
|
|
25680
27468
|
"summary": "Get all personal access tokens (PATs) for the current user.",
|
|
25681
|
-
"description": "Returns all of the [personal access tokens](https://docs.getunleash.io/
|
|
27469
|
+
"description": "Returns all of the [personal access tokens](https://docs.getunleash.io/reference/api-tokens-and-client-keys#personal-access-tokens) (PATs) belonging to the current user.",
|
|
25682
27470
|
"responses": {
|
|
25683
27471
|
"200": {
|
|
25684
27472
|
"description": "#/components/schemas/patsSchema",
|
|
@@ -25779,7 +27567,7 @@
|
|
|
25779
27567
|
],
|
|
25780
27568
|
"operationId": "createPat",
|
|
25781
27569
|
"summary": "Create a new personal access token (PAT) for the current user.",
|
|
25782
|
-
"description": "Creates a new [personal access token](https://docs.getunleash.io/
|
|
27570
|
+
"description": "Creates a new [personal access token](https://docs.getunleash.io/reference/api-tokens-and-client-keys#personal-access-tokens (PAT) belonging to the current user.",
|
|
25783
27571
|
"requestBody": {
|
|
25784
27572
|
"description": "#/components/schemas/createPatSchema",
|
|
25785
27573
|
"required": true,
|
|
@@ -25902,7 +27690,7 @@
|
|
|
25902
27690
|
],
|
|
25903
27691
|
"operationId": "deletePat",
|
|
25904
27692
|
"summary": "Delete a personal access token (PAT) for the current user.",
|
|
25905
|
-
"description": "Deletes a [personal access token](https://docs.getunleash.io/
|
|
27693
|
+
"description": "Deletes a [personal access token](https://docs.getunleash.io/reference/api-tokens-and-client-keys#personal-access-tokens) (PAT) belonging to the current user.",
|
|
25906
27694
|
"parameters": [
|
|
25907
27695
|
{
|
|
25908
27696
|
"name": "id",
|
|
@@ -26028,7 +27816,7 @@
|
|
|
26028
27816
|
"Admin UI"
|
|
26029
27817
|
],
|
|
26030
27818
|
"summary": "Set UI configuration",
|
|
26031
|
-
"description": "Sets the UI configuration for this Unleash instance.",
|
|
27819
|
+
"description": "Deprecated. Use `./cors` instead. Sets the UI configuration for this Unleash instance.",
|
|
26032
27820
|
"operationId": "setUiConfig",
|
|
26033
27821
|
"requestBody": {
|
|
26034
27822
|
"description": "setUiConfigSchema",
|
|
@@ -26045,7 +27833,8 @@
|
|
|
26045
27833
|
"200": {
|
|
26046
27834
|
"description": "This response has no body."
|
|
26047
27835
|
}
|
|
26048
|
-
}
|
|
27836
|
+
},
|
|
27837
|
+
"deprecated": true
|
|
26049
27838
|
}
|
|
26050
27839
|
},
|
|
26051
27840
|
"/api/admin/ui-config/cors": {
|
|
@@ -29757,7 +31546,7 @@
|
|
|
29757
31546
|
"/api/admin/user-admin/{id}/permissions": {
|
|
29758
31547
|
"get": {
|
|
29759
31548
|
"tags": [
|
|
29760
|
-
"
|
|
31549
|
+
"Unstable"
|
|
29761
31550
|
],
|
|
29762
31551
|
"operationId": "getUserPermissions",
|
|
29763
31552
|
"summary": "Returns the list of permissions for the user",
|
|
@@ -29791,7 +31580,14 @@
|
|
|
29791
31580
|
],
|
|
29792
31581
|
"responses": {
|
|
29793
31582
|
"200": {
|
|
29794
|
-
"description": "
|
|
31583
|
+
"description": "#/components/schemas/userAccessOverviewSchema",
|
|
31584
|
+
"content": {
|
|
31585
|
+
"application/json": {
|
|
31586
|
+
"schema": {
|
|
31587
|
+
"$ref": "#/components/schemas/userAccessOverviewSchema"
|
|
31588
|
+
}
|
|
31589
|
+
}
|
|
31590
|
+
}
|
|
29795
31591
|
},
|
|
29796
31592
|
"401": {
|
|
29797
31593
|
"description": "Authorization information is missing or invalid. Provide a valid API token as the `authorization` header, e.g. `authorization:*.*.my-admin-token`.",
|
|
@@ -30322,6 +32118,75 @@
|
|
|
30322
32118
|
}
|
|
30323
32119
|
}
|
|
30324
32120
|
},
|
|
32121
|
+
"/api/admin/user-admin/scim-users": {
|
|
32122
|
+
"delete": {
|
|
32123
|
+
"tags": [
|
|
32124
|
+
"Users"
|
|
32125
|
+
],
|
|
32126
|
+
"operationId": "deleteScimUsers",
|
|
32127
|
+
"summary": "Delete all SCIM users",
|
|
32128
|
+
"description": "Deletes all users managed by SCIM",
|
|
32129
|
+
"responses": {
|
|
32130
|
+
"200": {
|
|
32131
|
+
"description": "This response has no body."
|
|
32132
|
+
},
|
|
32133
|
+
"401": {
|
|
32134
|
+
"description": "Authorization information is missing or invalid. Provide a valid API token as the `authorization` header, e.g. `authorization:*.*.my-admin-token`.",
|
|
32135
|
+
"content": {
|
|
32136
|
+
"application/json": {
|
|
32137
|
+
"schema": {
|
|
32138
|
+
"type": "object",
|
|
32139
|
+
"properties": {
|
|
32140
|
+
"id": {
|
|
32141
|
+
"type": "string",
|
|
32142
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
32143
|
+
"description": "The ID of the error instance"
|
|
32144
|
+
},
|
|
32145
|
+
"name": {
|
|
32146
|
+
"type": "string",
|
|
32147
|
+
"example": "AuthenticationRequired",
|
|
32148
|
+
"description": "The name of the error kind"
|
|
32149
|
+
},
|
|
32150
|
+
"message": {
|
|
32151
|
+
"type": "string",
|
|
32152
|
+
"example": "You must log in to use Unleash. Your request had no authorization header, so we could not authorize you. Try logging in at /auth/simple/login.",
|
|
32153
|
+
"description": "A description of what went wrong."
|
|
32154
|
+
}
|
|
32155
|
+
}
|
|
32156
|
+
}
|
|
32157
|
+
}
|
|
32158
|
+
}
|
|
32159
|
+
},
|
|
32160
|
+
"403": {
|
|
32161
|
+
"description": "The provided user credentials are valid, but the user does not have the necessary permissions to perform this operation",
|
|
32162
|
+
"content": {
|
|
32163
|
+
"application/json": {
|
|
32164
|
+
"schema": {
|
|
32165
|
+
"type": "object",
|
|
32166
|
+
"properties": {
|
|
32167
|
+
"id": {
|
|
32168
|
+
"type": "string",
|
|
32169
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
32170
|
+
"description": "The ID of the error instance"
|
|
32171
|
+
},
|
|
32172
|
+
"name": {
|
|
32173
|
+
"type": "string",
|
|
32174
|
+
"example": "NoAccessError",
|
|
32175
|
+
"description": "The name of the error kind"
|
|
32176
|
+
},
|
|
32177
|
+
"message": {
|
|
32178
|
+
"type": "string",
|
|
32179
|
+
"example": "You need the \"UPDATE_ADDON\" permission to perform this action in the \"development\" environment.",
|
|
32180
|
+
"description": "A description of what went wrong."
|
|
32181
|
+
}
|
|
32182
|
+
}
|
|
32183
|
+
}
|
|
32184
|
+
}
|
|
32185
|
+
}
|
|
32186
|
+
}
|
|
32187
|
+
}
|
|
32188
|
+
}
|
|
32189
|
+
},
|
|
30325
32190
|
"/api/admin/feedback": {
|
|
30326
32191
|
"post": {
|
|
30327
32192
|
"tags": [
|
|
@@ -35937,20 +37802,185 @@
|
|
|
35937
37802
|
}
|
|
35938
37803
|
]
|
|
35939
37804
|
},
|
|
35940
|
-
"patch": {
|
|
35941
|
-
"summary": "Patch a feature's variants in an environment",
|
|
35942
|
-
"description": "Apply a list of patches to the features environments in the specified environment. The patch objects should conform to the [JSON-patch format (RFC 6902)](https://www.rfc-editor.org/rfc/rfc6902).",
|
|
37805
|
+
"patch": {
|
|
37806
|
+
"summary": "Patch a feature's variants in an environment",
|
|
37807
|
+
"description": "Apply a list of patches to the features environments in the specified environment. The patch objects should conform to the [JSON-patch format (RFC 6902)](https://www.rfc-editor.org/rfc/rfc6902).",
|
|
37808
|
+
"tags": [
|
|
37809
|
+
"Features"
|
|
37810
|
+
],
|
|
37811
|
+
"operationId": "patchEnvironmentsFeatureVariants",
|
|
37812
|
+
"requestBody": {
|
|
37813
|
+
"description": "patchesSchema",
|
|
37814
|
+
"required": true,
|
|
37815
|
+
"content": {
|
|
37816
|
+
"application/json": {
|
|
37817
|
+
"schema": {
|
|
37818
|
+
"$ref": "#/components/schemas/patchesSchema"
|
|
37819
|
+
}
|
|
37820
|
+
}
|
|
37821
|
+
}
|
|
37822
|
+
},
|
|
37823
|
+
"responses": {
|
|
37824
|
+
"200": {
|
|
37825
|
+
"description": "featureVariantsSchema",
|
|
37826
|
+
"content": {
|
|
37827
|
+
"application/json": {
|
|
37828
|
+
"schema": {
|
|
37829
|
+
"$ref": "#/components/schemas/featureVariantsSchema"
|
|
37830
|
+
}
|
|
37831
|
+
}
|
|
37832
|
+
}
|
|
37833
|
+
},
|
|
37834
|
+
"400": {
|
|
37835
|
+
"description": "The request data does not match what we expect.",
|
|
37836
|
+
"content": {
|
|
37837
|
+
"application/json": {
|
|
37838
|
+
"schema": {
|
|
37839
|
+
"type": "object",
|
|
37840
|
+
"properties": {
|
|
37841
|
+
"id": {
|
|
37842
|
+
"type": "string",
|
|
37843
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
37844
|
+
"description": "The ID of the error instance"
|
|
37845
|
+
},
|
|
37846
|
+
"name": {
|
|
37847
|
+
"type": "string",
|
|
37848
|
+
"example": "ValidationError",
|
|
37849
|
+
"description": "The name of the error kind"
|
|
37850
|
+
},
|
|
37851
|
+
"message": {
|
|
37852
|
+
"type": "string",
|
|
37853
|
+
"example": "The request payload you provided doesn't conform to the schema. The .parameters property should be object. You sent [].",
|
|
37854
|
+
"description": "A description of what went wrong."
|
|
37855
|
+
}
|
|
37856
|
+
}
|
|
37857
|
+
}
|
|
37858
|
+
}
|
|
37859
|
+
}
|
|
37860
|
+
},
|
|
37861
|
+
"401": {
|
|
37862
|
+
"description": "Authorization information is missing or invalid. Provide a valid API token as the `authorization` header, e.g. `authorization:*.*.my-admin-token`.",
|
|
37863
|
+
"content": {
|
|
37864
|
+
"application/json": {
|
|
37865
|
+
"schema": {
|
|
37866
|
+
"type": "object",
|
|
37867
|
+
"properties": {
|
|
37868
|
+
"id": {
|
|
37869
|
+
"type": "string",
|
|
37870
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
37871
|
+
"description": "The ID of the error instance"
|
|
37872
|
+
},
|
|
37873
|
+
"name": {
|
|
37874
|
+
"type": "string",
|
|
37875
|
+
"example": "AuthenticationRequired",
|
|
37876
|
+
"description": "The name of the error kind"
|
|
37877
|
+
},
|
|
37878
|
+
"message": {
|
|
37879
|
+
"type": "string",
|
|
37880
|
+
"example": "You must log in to use Unleash. Your request had no authorization header, so we could not authorize you. Try logging in at /auth/simple/login.",
|
|
37881
|
+
"description": "A description of what went wrong."
|
|
37882
|
+
}
|
|
37883
|
+
}
|
|
37884
|
+
}
|
|
37885
|
+
}
|
|
37886
|
+
}
|
|
37887
|
+
},
|
|
37888
|
+
"403": {
|
|
37889
|
+
"description": "The provided user credentials are valid, but the user does not have the necessary permissions to perform this operation",
|
|
37890
|
+
"content": {
|
|
37891
|
+
"application/json": {
|
|
37892
|
+
"schema": {
|
|
37893
|
+
"type": "object",
|
|
37894
|
+
"properties": {
|
|
37895
|
+
"id": {
|
|
37896
|
+
"type": "string",
|
|
37897
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
37898
|
+
"description": "The ID of the error instance"
|
|
37899
|
+
},
|
|
37900
|
+
"name": {
|
|
37901
|
+
"type": "string",
|
|
37902
|
+
"example": "NoAccessError",
|
|
37903
|
+
"description": "The name of the error kind"
|
|
37904
|
+
},
|
|
37905
|
+
"message": {
|
|
37906
|
+
"type": "string",
|
|
37907
|
+
"example": "You need the \"UPDATE_ADDON\" permission to perform this action in the \"development\" environment.",
|
|
37908
|
+
"description": "A description of what went wrong."
|
|
37909
|
+
}
|
|
37910
|
+
}
|
|
37911
|
+
}
|
|
37912
|
+
}
|
|
37913
|
+
}
|
|
37914
|
+
},
|
|
37915
|
+
"404": {
|
|
37916
|
+
"description": "The requested resource was not found.",
|
|
37917
|
+
"content": {
|
|
37918
|
+
"application/json": {
|
|
37919
|
+
"schema": {
|
|
37920
|
+
"type": "object",
|
|
37921
|
+
"properties": {
|
|
37922
|
+
"id": {
|
|
37923
|
+
"type": "string",
|
|
37924
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
37925
|
+
"description": "The ID of the error instance"
|
|
37926
|
+
},
|
|
37927
|
+
"name": {
|
|
37928
|
+
"type": "string",
|
|
37929
|
+
"example": "NotFoundError",
|
|
37930
|
+
"description": "The name of the error kind"
|
|
37931
|
+
},
|
|
37932
|
+
"message": {
|
|
37933
|
+
"type": "string",
|
|
37934
|
+
"example": "Could not find the addon with ID \"12345\".",
|
|
37935
|
+
"description": "A description of what went wrong."
|
|
37936
|
+
}
|
|
37937
|
+
}
|
|
37938
|
+
}
|
|
37939
|
+
}
|
|
37940
|
+
}
|
|
37941
|
+
}
|
|
37942
|
+
},
|
|
37943
|
+
"parameters": [
|
|
37944
|
+
{
|
|
37945
|
+
"name": "projectId",
|
|
37946
|
+
"in": "path",
|
|
37947
|
+
"required": true,
|
|
37948
|
+
"schema": {
|
|
37949
|
+
"type": "string"
|
|
37950
|
+
}
|
|
37951
|
+
},
|
|
37952
|
+
{
|
|
37953
|
+
"name": "featureName",
|
|
37954
|
+
"in": "path",
|
|
37955
|
+
"required": true,
|
|
37956
|
+
"schema": {
|
|
37957
|
+
"type": "string"
|
|
37958
|
+
}
|
|
37959
|
+
},
|
|
37960
|
+
{
|
|
37961
|
+
"name": "environment",
|
|
37962
|
+
"in": "path",
|
|
37963
|
+
"required": true,
|
|
37964
|
+
"schema": {
|
|
37965
|
+
"type": "string"
|
|
37966
|
+
}
|
|
37967
|
+
}
|
|
37968
|
+
]
|
|
37969
|
+
},
|
|
37970
|
+
"put": {
|
|
37971
|
+
"summary": "Create (overwrite) variants for a feature in an environment",
|
|
37972
|
+
"description": "This overwrites the current variants for the feature flag in the :featureName parameter for the :environment parameter.\n\nThe backend will validate the input for the following invariants:\n\n* If there are variants, there needs to be at least one variant with `weightType: variable`\n* The sum of the weights of variants with `weightType: fix` must be strictly less than 1000 (< 1000)\n\nThe backend will also distribute remaining weight up to 1000 after adding the variants with `weightType: fix` together amongst the variants of `weightType: variable`",
|
|
35943
37973
|
"tags": [
|
|
35944
37974
|
"Features"
|
|
35945
37975
|
],
|
|
35946
|
-
"operationId": "
|
|
37976
|
+
"operationId": "overwriteEnvironmentFeatureVariants",
|
|
35947
37977
|
"requestBody": {
|
|
35948
|
-
"description": "
|
|
37978
|
+
"description": "variantsSchema",
|
|
35949
37979
|
"required": true,
|
|
35950
37980
|
"content": {
|
|
35951
37981
|
"application/json": {
|
|
35952
37982
|
"schema": {
|
|
35953
|
-
"$ref": "#/components/schemas/
|
|
37983
|
+
"$ref": "#/components/schemas/variantsSchema"
|
|
35954
37984
|
}
|
|
35955
37985
|
}
|
|
35956
37986
|
}
|
|
@@ -36046,33 +38076,6 @@
|
|
|
36046
38076
|
}
|
|
36047
38077
|
}
|
|
36048
38078
|
}
|
|
36049
|
-
},
|
|
36050
|
-
"404": {
|
|
36051
|
-
"description": "The requested resource was not found.",
|
|
36052
|
-
"content": {
|
|
36053
|
-
"application/json": {
|
|
36054
|
-
"schema": {
|
|
36055
|
-
"type": "object",
|
|
36056
|
-
"properties": {
|
|
36057
|
-
"id": {
|
|
36058
|
-
"type": "string",
|
|
36059
|
-
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
36060
|
-
"description": "The ID of the error instance"
|
|
36061
|
-
},
|
|
36062
|
-
"name": {
|
|
36063
|
-
"type": "string",
|
|
36064
|
-
"example": "NotFoundError",
|
|
36065
|
-
"description": "The name of the error kind"
|
|
36066
|
-
},
|
|
36067
|
-
"message": {
|
|
36068
|
-
"type": "string",
|
|
36069
|
-
"example": "Could not find the addon with ID \"12345\".",
|
|
36070
|
-
"description": "A description of what went wrong."
|
|
36071
|
-
}
|
|
36072
|
-
}
|
|
36073
|
-
}
|
|
36074
|
-
}
|
|
36075
|
-
}
|
|
36076
38079
|
}
|
|
36077
38080
|
},
|
|
36078
38081
|
"parameters": [
|
|
@@ -36101,21 +38104,23 @@
|
|
|
36101
38104
|
}
|
|
36102
38105
|
}
|
|
36103
38106
|
]
|
|
36104
|
-
}
|
|
38107
|
+
}
|
|
38108
|
+
},
|
|
38109
|
+
"/api/admin/projects/{projectId}/features/{featureName}/variants-batch": {
|
|
36105
38110
|
"put": {
|
|
36106
|
-
"summary": "Create (overwrite) variants for a feature in an environment",
|
|
36107
|
-
"description": "This overwrites the current variants for the feature flag in the :featureName parameter for the :environment parameter.\n\nThe backend will validate the input for the following invariants:\n\n* If there are variants, there needs to be at least one variant with `weightType: variable`\n* The sum of the weights of variants with `weightType: fix` must be strictly less than 1000 (< 1000)\n\nThe backend will also distribute remaining weight up to 1000 after adding the variants with `weightType: fix` together amongst the variants of `weightType: variable`",
|
|
36108
38111
|
"tags": [
|
|
36109
38112
|
"Features"
|
|
36110
38113
|
],
|
|
36111
|
-
"operationId": "
|
|
38114
|
+
"operationId": "overwriteFeatureVariantsOnEnvironments",
|
|
38115
|
+
"summary": "Create (overwrite) variants for a feature flag in multiple environments",
|
|
38116
|
+
"description": "This overwrites the current variants for the feature flag in the :featureName parameter for the :environment parameter.",
|
|
36112
38117
|
"requestBody": {
|
|
36113
|
-
"description": "
|
|
38118
|
+
"description": "pushVariantsSchema",
|
|
36114
38119
|
"required": true,
|
|
36115
38120
|
"content": {
|
|
36116
38121
|
"application/json": {
|
|
36117
38122
|
"schema": {
|
|
36118
|
-
"$ref": "#/components/schemas/
|
|
38123
|
+
"$ref": "#/components/schemas/pushVariantsSchema"
|
|
36119
38124
|
}
|
|
36120
38125
|
}
|
|
36121
38126
|
}
|
|
@@ -36229,9 +38234,114 @@
|
|
|
36229
38234
|
"schema": {
|
|
36230
38235
|
"type": "string"
|
|
36231
38236
|
}
|
|
38237
|
+
}
|
|
38238
|
+
]
|
|
38239
|
+
}
|
|
38240
|
+
},
|
|
38241
|
+
"/api/admin/projects/{projectId}/api-tokens": {
|
|
38242
|
+
"get": {
|
|
38243
|
+
"tags": [
|
|
38244
|
+
"Projects"
|
|
38245
|
+
],
|
|
38246
|
+
"operationId": "getProjectApiTokens",
|
|
38247
|
+
"summary": "Get api tokens for project.",
|
|
38248
|
+
"description": "Returns the project-specific [API tokens](https://docs.getunleash.io/reference/api-tokens) that have been created for this project.",
|
|
38249
|
+
"responses": {
|
|
38250
|
+
"200": {
|
|
38251
|
+
"description": "apiTokensSchema",
|
|
38252
|
+
"content": {
|
|
38253
|
+
"application/json": {
|
|
38254
|
+
"schema": {
|
|
38255
|
+
"$ref": "#/components/schemas/apiTokensSchema"
|
|
38256
|
+
}
|
|
38257
|
+
}
|
|
38258
|
+
}
|
|
36232
38259
|
},
|
|
38260
|
+
"401": {
|
|
38261
|
+
"description": "Authorization information is missing or invalid. Provide a valid API token as the `authorization` header, e.g. `authorization:*.*.my-admin-token`.",
|
|
38262
|
+
"content": {
|
|
38263
|
+
"application/json": {
|
|
38264
|
+
"schema": {
|
|
38265
|
+
"type": "object",
|
|
38266
|
+
"properties": {
|
|
38267
|
+
"id": {
|
|
38268
|
+
"type": "string",
|
|
38269
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
38270
|
+
"description": "The ID of the error instance"
|
|
38271
|
+
},
|
|
38272
|
+
"name": {
|
|
38273
|
+
"type": "string",
|
|
38274
|
+
"example": "AuthenticationRequired",
|
|
38275
|
+
"description": "The name of the error kind"
|
|
38276
|
+
},
|
|
38277
|
+
"message": {
|
|
38278
|
+
"type": "string",
|
|
38279
|
+
"example": "You must log in to use Unleash. Your request had no authorization header, so we could not authorize you. Try logging in at /auth/simple/login.",
|
|
38280
|
+
"description": "A description of what went wrong."
|
|
38281
|
+
}
|
|
38282
|
+
}
|
|
38283
|
+
}
|
|
38284
|
+
}
|
|
38285
|
+
}
|
|
38286
|
+
},
|
|
38287
|
+
"403": {
|
|
38288
|
+
"description": "The provided user credentials are valid, but the user does not have the necessary permissions to perform this operation",
|
|
38289
|
+
"content": {
|
|
38290
|
+
"application/json": {
|
|
38291
|
+
"schema": {
|
|
38292
|
+
"type": "object",
|
|
38293
|
+
"properties": {
|
|
38294
|
+
"id": {
|
|
38295
|
+
"type": "string",
|
|
38296
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
38297
|
+
"description": "The ID of the error instance"
|
|
38298
|
+
},
|
|
38299
|
+
"name": {
|
|
38300
|
+
"type": "string",
|
|
38301
|
+
"example": "NoAccessError",
|
|
38302
|
+
"description": "The name of the error kind"
|
|
38303
|
+
},
|
|
38304
|
+
"message": {
|
|
38305
|
+
"type": "string",
|
|
38306
|
+
"example": "You need the \"UPDATE_ADDON\" permission to perform this action in the \"development\" environment.",
|
|
38307
|
+
"description": "A description of what went wrong."
|
|
38308
|
+
}
|
|
38309
|
+
}
|
|
38310
|
+
}
|
|
38311
|
+
}
|
|
38312
|
+
}
|
|
38313
|
+
},
|
|
38314
|
+
"404": {
|
|
38315
|
+
"description": "The requested resource was not found.",
|
|
38316
|
+
"content": {
|
|
38317
|
+
"application/json": {
|
|
38318
|
+
"schema": {
|
|
38319
|
+
"type": "object",
|
|
38320
|
+
"properties": {
|
|
38321
|
+
"id": {
|
|
38322
|
+
"type": "string",
|
|
38323
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
38324
|
+
"description": "The ID of the error instance"
|
|
38325
|
+
},
|
|
38326
|
+
"name": {
|
|
38327
|
+
"type": "string",
|
|
38328
|
+
"example": "NotFoundError",
|
|
38329
|
+
"description": "The name of the error kind"
|
|
38330
|
+
},
|
|
38331
|
+
"message": {
|
|
38332
|
+
"type": "string",
|
|
38333
|
+
"example": "Could not find the addon with ID \"12345\".",
|
|
38334
|
+
"description": "A description of what went wrong."
|
|
38335
|
+
}
|
|
38336
|
+
}
|
|
38337
|
+
}
|
|
38338
|
+
}
|
|
38339
|
+
}
|
|
38340
|
+
}
|
|
38341
|
+
},
|
|
38342
|
+
"parameters": [
|
|
36233
38343
|
{
|
|
36234
|
-
"name": "
|
|
38344
|
+
"name": "projectId",
|
|
36235
38345
|
"in": "path",
|
|
36236
38346
|
"required": true,
|
|
36237
38347
|
"schema": {
|
|
@@ -36239,34 +38349,41 @@
|
|
|
36239
38349
|
}
|
|
36240
38350
|
}
|
|
36241
38351
|
]
|
|
36242
|
-
}
|
|
36243
|
-
|
|
36244
|
-
"/api/admin/projects/{projectId}/features/{featureName}/variants-batch": {
|
|
36245
|
-
"put": {
|
|
38352
|
+
},
|
|
38353
|
+
"post": {
|
|
36246
38354
|
"tags": [
|
|
36247
|
-
"
|
|
38355
|
+
"Projects"
|
|
36248
38356
|
],
|
|
36249
|
-
"operationId": "
|
|
36250
|
-
"summary": "Create (overwrite) variants for a feature flag in multiple environments",
|
|
36251
|
-
"description": "This overwrites the current variants for the feature flag in the :featureName parameter for the :environment parameter.",
|
|
38357
|
+
"operationId": "createProjectApiToken",
|
|
36252
38358
|
"requestBody": {
|
|
36253
|
-
"description": "
|
|
38359
|
+
"description": "createApiTokenSchema",
|
|
36254
38360
|
"required": true,
|
|
36255
38361
|
"content": {
|
|
36256
38362
|
"application/json": {
|
|
36257
38363
|
"schema": {
|
|
36258
|
-
"$ref": "#/components/schemas/
|
|
38364
|
+
"$ref": "#/components/schemas/createApiTokenSchema"
|
|
36259
38365
|
}
|
|
36260
38366
|
}
|
|
36261
38367
|
}
|
|
36262
38368
|
},
|
|
38369
|
+
"summary": "Create a project API token.",
|
|
38370
|
+
"description": "Endpoint that allows creation of [project API tokens](https://docs.getunleash.io/reference/api-tokens-and-client-keys#api-token-visibility) for the specified project.",
|
|
36263
38371
|
"responses": {
|
|
36264
|
-
"
|
|
36265
|
-
"
|
|
38372
|
+
"201": {
|
|
38373
|
+
"headers": {
|
|
38374
|
+
"location": {
|
|
38375
|
+
"description": "The location of the newly created resource.",
|
|
38376
|
+
"schema": {
|
|
38377
|
+
"type": "string",
|
|
38378
|
+
"format": "uri"
|
|
38379
|
+
}
|
|
38380
|
+
}
|
|
38381
|
+
},
|
|
38382
|
+
"description": "The resource was successfully created.",
|
|
36266
38383
|
"content": {
|
|
36267
38384
|
"application/json": {
|
|
36268
38385
|
"schema": {
|
|
36269
|
-
"$ref": "#/components/schemas/
|
|
38386
|
+
"$ref": "#/components/schemas/apiTokenSchema"
|
|
36270
38387
|
}
|
|
36271
38388
|
}
|
|
36272
38389
|
}
|
|
@@ -36351,6 +38468,33 @@
|
|
|
36351
38468
|
}
|
|
36352
38469
|
}
|
|
36353
38470
|
}
|
|
38471
|
+
},
|
|
38472
|
+
"404": {
|
|
38473
|
+
"description": "The requested resource was not found.",
|
|
38474
|
+
"content": {
|
|
38475
|
+
"application/json": {
|
|
38476
|
+
"schema": {
|
|
38477
|
+
"type": "object",
|
|
38478
|
+
"properties": {
|
|
38479
|
+
"id": {
|
|
38480
|
+
"type": "string",
|
|
38481
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
38482
|
+
"description": "The ID of the error instance"
|
|
38483
|
+
},
|
|
38484
|
+
"name": {
|
|
38485
|
+
"type": "string",
|
|
38486
|
+
"example": "NotFoundError",
|
|
38487
|
+
"description": "The name of the error kind"
|
|
38488
|
+
},
|
|
38489
|
+
"message": {
|
|
38490
|
+
"type": "string",
|
|
38491
|
+
"example": "Could not find the addon with ID \"12345\".",
|
|
38492
|
+
"description": "A description of what went wrong."
|
|
38493
|
+
}
|
|
38494
|
+
}
|
|
38495
|
+
}
|
|
38496
|
+
}
|
|
38497
|
+
}
|
|
36354
38498
|
}
|
|
36355
38499
|
},
|
|
36356
38500
|
"parameters": [
|
|
@@ -36361,33 +38505,45 @@
|
|
|
36361
38505
|
"schema": {
|
|
36362
38506
|
"type": "string"
|
|
36363
38507
|
}
|
|
36364
|
-
},
|
|
36365
|
-
{
|
|
36366
|
-
"name": "featureName",
|
|
36367
|
-
"in": "path",
|
|
36368
|
-
"required": true,
|
|
36369
|
-
"schema": {
|
|
36370
|
-
"type": "string"
|
|
36371
|
-
}
|
|
36372
38508
|
}
|
|
36373
38509
|
]
|
|
36374
38510
|
}
|
|
36375
38511
|
},
|
|
36376
|
-
"/api/admin/projects/{projectId}/api-tokens": {
|
|
36377
|
-
"
|
|
38512
|
+
"/api/admin/projects/{projectId}/api-tokens/{token}": {
|
|
38513
|
+
"delete": {
|
|
36378
38514
|
"tags": [
|
|
36379
38515
|
"Projects"
|
|
36380
38516
|
],
|
|
36381
|
-
"operationId": "
|
|
36382
|
-
"summary": "
|
|
36383
|
-
"description": "
|
|
38517
|
+
"operationId": "deleteProjectApiToken",
|
|
38518
|
+
"summary": "Delete a project API token.",
|
|
38519
|
+
"description": "This operation deletes the API token specified in the request URL. If the token doesn't exist, returns an OK response (status code 200).",
|
|
36384
38520
|
"responses": {
|
|
36385
38521
|
"200": {
|
|
36386
|
-
"description": "
|
|
38522
|
+
"description": "This response has no body."
|
|
38523
|
+
},
|
|
38524
|
+
"400": {
|
|
38525
|
+
"description": "The request data does not match what we expect.",
|
|
36387
38526
|
"content": {
|
|
36388
38527
|
"application/json": {
|
|
36389
38528
|
"schema": {
|
|
36390
|
-
"
|
|
38529
|
+
"type": "object",
|
|
38530
|
+
"properties": {
|
|
38531
|
+
"id": {
|
|
38532
|
+
"type": "string",
|
|
38533
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
38534
|
+
"description": "The ID of the error instance"
|
|
38535
|
+
},
|
|
38536
|
+
"name": {
|
|
38537
|
+
"type": "string",
|
|
38538
|
+
"example": "ValidationError",
|
|
38539
|
+
"description": "The name of the error kind"
|
|
38540
|
+
},
|
|
38541
|
+
"message": {
|
|
38542
|
+
"type": "string",
|
|
38543
|
+
"example": "The request payload you provided doesn't conform to the schema. The .parameters property should be object. You sent [].",
|
|
38544
|
+
"description": "A description of what went wrong."
|
|
38545
|
+
}
|
|
38546
|
+
}
|
|
36391
38547
|
}
|
|
36392
38548
|
}
|
|
36393
38549
|
}
|
|
@@ -36482,46 +38638,40 @@
|
|
|
36482
38638
|
"schema": {
|
|
36483
38639
|
"type": "string"
|
|
36484
38640
|
}
|
|
38641
|
+
},
|
|
38642
|
+
{
|
|
38643
|
+
"name": "token",
|
|
38644
|
+
"in": "path",
|
|
38645
|
+
"required": true,
|
|
38646
|
+
"schema": {
|
|
38647
|
+
"type": "string"
|
|
38648
|
+
}
|
|
36485
38649
|
}
|
|
36486
38650
|
]
|
|
36487
|
-
}
|
|
38651
|
+
}
|
|
38652
|
+
},
|
|
38653
|
+
"/api/admin/projects/{projectId}/delete": {
|
|
36488
38654
|
"post": {
|
|
36489
38655
|
"tags": [
|
|
36490
|
-
"
|
|
38656
|
+
"Archive"
|
|
36491
38657
|
],
|
|
36492
|
-
"operationId": "
|
|
38658
|
+
"operationId": "deleteFeatures",
|
|
38659
|
+
"description": "This endpoint deletes the specified features, that are in archive.",
|
|
38660
|
+
"summary": "Deletes a list of features",
|
|
36493
38661
|
"requestBody": {
|
|
36494
|
-
"description": "
|
|
38662
|
+
"description": "batchFeaturesSchema",
|
|
36495
38663
|
"required": true,
|
|
36496
38664
|
"content": {
|
|
36497
38665
|
"application/json": {
|
|
36498
38666
|
"schema": {
|
|
36499
|
-
"$ref": "#/components/schemas/
|
|
38667
|
+
"$ref": "#/components/schemas/batchFeaturesSchema"
|
|
36500
38668
|
}
|
|
36501
38669
|
}
|
|
36502
38670
|
}
|
|
36503
38671
|
},
|
|
36504
|
-
"summary": "Create a project API token.",
|
|
36505
|
-
"description": "Endpoint that allows creation of [project API tokens](https://docs.getunleash.io/reference/api-tokens-and-client-keys#api-token-visibility) for the specified project.",
|
|
36506
38672
|
"responses": {
|
|
36507
|
-
"
|
|
36508
|
-
"
|
|
36509
|
-
"location": {
|
|
36510
|
-
"description": "The location of the newly created resource.",
|
|
36511
|
-
"schema": {
|
|
36512
|
-
"type": "string",
|
|
36513
|
-
"format": "uri"
|
|
36514
|
-
}
|
|
36515
|
-
}
|
|
36516
|
-
},
|
|
36517
|
-
"description": "The resource was successfully created.",
|
|
36518
|
-
"content": {
|
|
36519
|
-
"application/json": {
|
|
36520
|
-
"schema": {
|
|
36521
|
-
"$ref": "#/components/schemas/apiTokenSchema"
|
|
36522
|
-
}
|
|
36523
|
-
}
|
|
36524
|
-
}
|
|
38673
|
+
"200": {
|
|
38674
|
+
"description": "This response has no body."
|
|
36525
38675
|
},
|
|
36526
38676
|
"400": {
|
|
36527
38677
|
"description": "The request data does not match what we expect.",
|
|
@@ -36603,9 +38753,72 @@
|
|
|
36603
38753
|
}
|
|
36604
38754
|
}
|
|
36605
38755
|
}
|
|
38756
|
+
}
|
|
38757
|
+
},
|
|
38758
|
+
"parameters": [
|
|
38759
|
+
{
|
|
38760
|
+
"name": "projectId",
|
|
38761
|
+
"in": "path",
|
|
38762
|
+
"required": true,
|
|
38763
|
+
"schema": {
|
|
38764
|
+
"type": "string"
|
|
38765
|
+
}
|
|
38766
|
+
}
|
|
38767
|
+
]
|
|
38768
|
+
}
|
|
38769
|
+
},
|
|
38770
|
+
"/api/admin/projects/{projectId}/revive": {
|
|
38771
|
+
"post": {
|
|
38772
|
+
"tags": [
|
|
38773
|
+
"Archive"
|
|
38774
|
+
],
|
|
38775
|
+
"operationId": "reviveFeatures",
|
|
38776
|
+
"description": "This endpoint revives the specified features.",
|
|
38777
|
+
"summary": "Revives a list of features",
|
|
38778
|
+
"requestBody": {
|
|
38779
|
+
"description": "batchFeaturesSchema",
|
|
38780
|
+
"required": true,
|
|
38781
|
+
"content": {
|
|
38782
|
+
"application/json": {
|
|
38783
|
+
"schema": {
|
|
38784
|
+
"$ref": "#/components/schemas/batchFeaturesSchema"
|
|
38785
|
+
}
|
|
38786
|
+
}
|
|
38787
|
+
}
|
|
38788
|
+
},
|
|
38789
|
+
"responses": {
|
|
38790
|
+
"200": {
|
|
38791
|
+
"description": "This response has no body."
|
|
38792
|
+
},
|
|
38793
|
+
"400": {
|
|
38794
|
+
"description": "The request data does not match what we expect.",
|
|
38795
|
+
"content": {
|
|
38796
|
+
"application/json": {
|
|
38797
|
+
"schema": {
|
|
38798
|
+
"type": "object",
|
|
38799
|
+
"properties": {
|
|
38800
|
+
"id": {
|
|
38801
|
+
"type": "string",
|
|
38802
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
38803
|
+
"description": "The ID of the error instance"
|
|
38804
|
+
},
|
|
38805
|
+
"name": {
|
|
38806
|
+
"type": "string",
|
|
38807
|
+
"example": "ValidationError",
|
|
38808
|
+
"description": "The name of the error kind"
|
|
38809
|
+
},
|
|
38810
|
+
"message": {
|
|
38811
|
+
"type": "string",
|
|
38812
|
+
"example": "The request payload you provided doesn't conform to the schema. The .parameters property should be object. You sent [].",
|
|
38813
|
+
"description": "A description of what went wrong."
|
|
38814
|
+
}
|
|
38815
|
+
}
|
|
38816
|
+
}
|
|
38817
|
+
}
|
|
38818
|
+
}
|
|
36606
38819
|
},
|
|
36607
|
-
"
|
|
36608
|
-
"description": "
|
|
38820
|
+
"401": {
|
|
38821
|
+
"description": "Authorization information is missing or invalid. Provide a valid API token as the `authorization` header, e.g. `authorization:*.*.my-admin-token`.",
|
|
36609
38822
|
"content": {
|
|
36610
38823
|
"application/json": {
|
|
36611
38824
|
"schema": {
|
|
@@ -36618,12 +38831,39 @@
|
|
|
36618
38831
|
},
|
|
36619
38832
|
"name": {
|
|
36620
38833
|
"type": "string",
|
|
36621
|
-
"example": "
|
|
38834
|
+
"example": "AuthenticationRequired",
|
|
36622
38835
|
"description": "The name of the error kind"
|
|
36623
38836
|
},
|
|
36624
38837
|
"message": {
|
|
36625
38838
|
"type": "string",
|
|
36626
|
-
"example": "
|
|
38839
|
+
"example": "You must log in to use Unleash. Your request had no authorization header, so we could not authorize you. Try logging in at /auth/simple/login.",
|
|
38840
|
+
"description": "A description of what went wrong."
|
|
38841
|
+
}
|
|
38842
|
+
}
|
|
38843
|
+
}
|
|
38844
|
+
}
|
|
38845
|
+
}
|
|
38846
|
+
},
|
|
38847
|
+
"403": {
|
|
38848
|
+
"description": "The provided user credentials are valid, but the user does not have the necessary permissions to perform this operation",
|
|
38849
|
+
"content": {
|
|
38850
|
+
"application/json": {
|
|
38851
|
+
"schema": {
|
|
38852
|
+
"type": "object",
|
|
38853
|
+
"properties": {
|
|
38854
|
+
"id": {
|
|
38855
|
+
"type": "string",
|
|
38856
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
38857
|
+
"description": "The ID of the error instance"
|
|
38858
|
+
},
|
|
38859
|
+
"name": {
|
|
38860
|
+
"type": "string",
|
|
38861
|
+
"example": "NoAccessError",
|
|
38862
|
+
"description": "The name of the error kind"
|
|
38863
|
+
},
|
|
38864
|
+
"message": {
|
|
38865
|
+
"type": "string",
|
|
38866
|
+
"example": "You need the \"UPDATE_ADDON\" permission to perform this action in the \"development\" environment.",
|
|
36627
38867
|
"description": "A description of what went wrong."
|
|
36628
38868
|
}
|
|
36629
38869
|
}
|
|
@@ -36644,17 +38884,35 @@
|
|
|
36644
38884
|
]
|
|
36645
38885
|
}
|
|
36646
38886
|
},
|
|
36647
|
-
"/api/admin/projects/{projectId}/
|
|
36648
|
-
"
|
|
38887
|
+
"/api/admin/projects/{projectId}/archive/validate": {
|
|
38888
|
+
"post": {
|
|
36649
38889
|
"tags": [
|
|
36650
|
-
"
|
|
38890
|
+
"Features"
|
|
36651
38891
|
],
|
|
36652
|
-
"operationId": "
|
|
36653
|
-
"
|
|
36654
|
-
"
|
|
38892
|
+
"operationId": "validateArchiveFeatures",
|
|
38893
|
+
"description": "This endpoint return info about the archive features impact.",
|
|
38894
|
+
"summary": "Validates archive features",
|
|
38895
|
+
"requestBody": {
|
|
38896
|
+
"description": "batchFeaturesSchema",
|
|
38897
|
+
"required": true,
|
|
38898
|
+
"content": {
|
|
38899
|
+
"application/json": {
|
|
38900
|
+
"schema": {
|
|
38901
|
+
"$ref": "#/components/schemas/batchFeaturesSchema"
|
|
38902
|
+
}
|
|
38903
|
+
}
|
|
38904
|
+
}
|
|
38905
|
+
},
|
|
36655
38906
|
"responses": {
|
|
36656
38907
|
"200": {
|
|
36657
|
-
"description": "
|
|
38908
|
+
"description": "validateArchiveFeaturesSchema",
|
|
38909
|
+
"content": {
|
|
38910
|
+
"application/json": {
|
|
38911
|
+
"schema": {
|
|
38912
|
+
"$ref": "#/components/schemas/validateArchiveFeaturesSchema"
|
|
38913
|
+
}
|
|
38914
|
+
}
|
|
38915
|
+
}
|
|
36658
38916
|
},
|
|
36659
38917
|
"400": {
|
|
36660
38918
|
"description": "The request data does not match what we expect.",
|
|
@@ -36737,8 +38995,8 @@
|
|
|
36737
38995
|
}
|
|
36738
38996
|
}
|
|
36739
38997
|
},
|
|
36740
|
-
"
|
|
36741
|
-
"description": "The
|
|
38998
|
+
"415": {
|
|
38999
|
+
"description": "The operation does not support request payloads of the provided type. Please ensure that you're using one of the listed payload types and that you have specified the right content type in the \"content-type\" header.",
|
|
36742
39000
|
"content": {
|
|
36743
39001
|
"application/json": {
|
|
36744
39002
|
"schema": {
|
|
@@ -36751,12 +39009,12 @@
|
|
|
36751
39009
|
},
|
|
36752
39010
|
"name": {
|
|
36753
39011
|
"type": "string",
|
|
36754
|
-
"example": "
|
|
39012
|
+
"example": "ContentTypeerror",
|
|
36755
39013
|
"description": "The name of the error kind"
|
|
36756
39014
|
},
|
|
36757
39015
|
"message": {
|
|
36758
39016
|
"type": "string",
|
|
36759
|
-
"example": "
|
|
39017
|
+
"example": "We do not accept the content-type you provided (application/xml). Try using one of the content-types we do accept instead (application/json) and make sure the body is in the corresponding format.",
|
|
36760
39018
|
"description": "A description of what went wrong."
|
|
36761
39019
|
}
|
|
36762
39020
|
}
|
|
@@ -36773,26 +39031,18 @@
|
|
|
36773
39031
|
"schema": {
|
|
36774
39032
|
"type": "string"
|
|
36775
39033
|
}
|
|
36776
|
-
},
|
|
36777
|
-
{
|
|
36778
|
-
"name": "token",
|
|
36779
|
-
"in": "path",
|
|
36780
|
-
"required": true,
|
|
36781
|
-
"schema": {
|
|
36782
|
-
"type": "string"
|
|
36783
|
-
}
|
|
36784
39034
|
}
|
|
36785
39035
|
]
|
|
36786
39036
|
}
|
|
36787
39037
|
},
|
|
36788
|
-
"/api/admin/projects/{projectId}/
|
|
39038
|
+
"/api/admin/projects/{projectId}/archive": {
|
|
36789
39039
|
"post": {
|
|
36790
39040
|
"tags": [
|
|
36791
|
-
"
|
|
39041
|
+
"Features"
|
|
36792
39042
|
],
|
|
36793
|
-
"operationId": "
|
|
36794
|
-
"description": "This endpoint
|
|
36795
|
-
"summary": "
|
|
39043
|
+
"operationId": "archiveFeatures",
|
|
39044
|
+
"description": "This endpoint archives the specified features. Any features that are already archived or that don't exist are ignored. All existing features (whether already archived or not) that are provided must belong to the specified project.",
|
|
39045
|
+
"summary": "Archives a list of features",
|
|
36796
39046
|
"requestBody": {
|
|
36797
39047
|
"description": "batchFeaturesSchema",
|
|
36798
39048
|
"required": true,
|
|
@@ -36805,7 +39055,7 @@
|
|
|
36805
39055
|
}
|
|
36806
39056
|
},
|
|
36807
39057
|
"responses": {
|
|
36808
|
-
"
|
|
39058
|
+
"202": {
|
|
36809
39059
|
"description": "This response has no body."
|
|
36810
39060
|
},
|
|
36811
39061
|
"400": {
|
|
@@ -36888,6 +39138,33 @@
|
|
|
36888
39138
|
}
|
|
36889
39139
|
}
|
|
36890
39140
|
}
|
|
39141
|
+
},
|
|
39142
|
+
"415": {
|
|
39143
|
+
"description": "The operation does not support request payloads of the provided type. Please ensure that you're using one of the listed payload types and that you have specified the right content type in the \"content-type\" header.",
|
|
39144
|
+
"content": {
|
|
39145
|
+
"application/json": {
|
|
39146
|
+
"schema": {
|
|
39147
|
+
"type": "object",
|
|
39148
|
+
"properties": {
|
|
39149
|
+
"id": {
|
|
39150
|
+
"type": "string",
|
|
39151
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
39152
|
+
"description": "The ID of the error instance"
|
|
39153
|
+
},
|
|
39154
|
+
"name": {
|
|
39155
|
+
"type": "string",
|
|
39156
|
+
"example": "ContentTypeerror",
|
|
39157
|
+
"description": "The name of the error kind"
|
|
39158
|
+
},
|
|
39159
|
+
"message": {
|
|
39160
|
+
"type": "string",
|
|
39161
|
+
"example": "We do not accept the content-type you provided (application/xml). Try using one of the content-types we do accept instead (application/json) and make sure the body is in the corresponding format.",
|
|
39162
|
+
"description": "A description of what went wrong."
|
|
39163
|
+
}
|
|
39164
|
+
}
|
|
39165
|
+
}
|
|
39166
|
+
}
|
|
39167
|
+
}
|
|
36891
39168
|
}
|
|
36892
39169
|
},
|
|
36893
39170
|
"parameters": [
|
|
@@ -36902,52 +39179,21 @@
|
|
|
36902
39179
|
]
|
|
36903
39180
|
}
|
|
36904
39181
|
},
|
|
36905
|
-
"/api/admin/projects/{projectId}/
|
|
36906
|
-
"
|
|
39182
|
+
"/api/admin/projects/{projectId}/insights": {
|
|
39183
|
+
"get": {
|
|
36907
39184
|
"tags": [
|
|
36908
|
-
"
|
|
39185
|
+
"Projects"
|
|
36909
39186
|
],
|
|
36910
|
-
"operationId": "
|
|
36911
|
-
"
|
|
36912
|
-
"
|
|
36913
|
-
"requestBody": {
|
|
36914
|
-
"description": "batchFeaturesSchema",
|
|
36915
|
-
"required": true,
|
|
36916
|
-
"content": {
|
|
36917
|
-
"application/json": {
|
|
36918
|
-
"schema": {
|
|
36919
|
-
"$ref": "#/components/schemas/batchFeaturesSchema"
|
|
36920
|
-
}
|
|
36921
|
-
}
|
|
36922
|
-
}
|
|
36923
|
-
},
|
|
39187
|
+
"operationId": "getProjectInsights",
|
|
39188
|
+
"summary": "Get an overview of a project insights.",
|
|
39189
|
+
"description": "This endpoint returns insights into the specified projects stats, health, lead time for changes, feature types used, members and change requests.",
|
|
36924
39190
|
"responses": {
|
|
36925
39191
|
"200": {
|
|
36926
|
-
"description": "
|
|
36927
|
-
},
|
|
36928
|
-
"400": {
|
|
36929
|
-
"description": "The request data does not match what we expect.",
|
|
39192
|
+
"description": "projectInsightsSchema",
|
|
36930
39193
|
"content": {
|
|
36931
39194
|
"application/json": {
|
|
36932
39195
|
"schema": {
|
|
36933
|
-
"
|
|
36934
|
-
"properties": {
|
|
36935
|
-
"id": {
|
|
36936
|
-
"type": "string",
|
|
36937
|
-
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
36938
|
-
"description": "The ID of the error instance"
|
|
36939
|
-
},
|
|
36940
|
-
"name": {
|
|
36941
|
-
"type": "string",
|
|
36942
|
-
"example": "ValidationError",
|
|
36943
|
-
"description": "The name of the error kind"
|
|
36944
|
-
},
|
|
36945
|
-
"message": {
|
|
36946
|
-
"type": "string",
|
|
36947
|
-
"example": "The request payload you provided doesn't conform to the schema. The .parameters property should be object. You sent [].",
|
|
36948
|
-
"description": "A description of what went wrong."
|
|
36949
|
-
}
|
|
36950
|
-
}
|
|
39196
|
+
"$ref": "#/components/schemas/projectInsightsSchema"
|
|
36951
39197
|
}
|
|
36952
39198
|
}
|
|
36953
39199
|
}
|
|
@@ -37005,6 +39251,33 @@
|
|
|
37005
39251
|
}
|
|
37006
39252
|
}
|
|
37007
39253
|
}
|
|
39254
|
+
},
|
|
39255
|
+
"404": {
|
|
39256
|
+
"description": "The requested resource was not found.",
|
|
39257
|
+
"content": {
|
|
39258
|
+
"application/json": {
|
|
39259
|
+
"schema": {
|
|
39260
|
+
"type": "object",
|
|
39261
|
+
"properties": {
|
|
39262
|
+
"id": {
|
|
39263
|
+
"type": "string",
|
|
39264
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
39265
|
+
"description": "The ID of the error instance"
|
|
39266
|
+
},
|
|
39267
|
+
"name": {
|
|
39268
|
+
"type": "string",
|
|
39269
|
+
"example": "NotFoundError",
|
|
39270
|
+
"description": "The name of the error kind"
|
|
39271
|
+
},
|
|
39272
|
+
"message": {
|
|
39273
|
+
"type": "string",
|
|
39274
|
+
"example": "Could not find the addon with ID \"12345\".",
|
|
39275
|
+
"description": "A description of what went wrong."
|
|
39276
|
+
}
|
|
39277
|
+
}
|
|
39278
|
+
}
|
|
39279
|
+
}
|
|
39280
|
+
}
|
|
37008
39281
|
}
|
|
37009
39282
|
},
|
|
37010
39283
|
"parameters": [
|
|
@@ -37019,59 +39292,21 @@
|
|
|
37019
39292
|
]
|
|
37020
39293
|
}
|
|
37021
39294
|
},
|
|
37022
|
-
"/api/admin/projects/{projectId}/
|
|
37023
|
-
"
|
|
39295
|
+
"/api/admin/projects/{projectId}/status": {
|
|
39296
|
+
"get": {
|
|
37024
39297
|
"tags": [
|
|
37025
|
-
"
|
|
39298
|
+
"Unstable"
|
|
37026
39299
|
],
|
|
37027
|
-
"operationId": "
|
|
37028
|
-
"
|
|
37029
|
-
"
|
|
37030
|
-
"requestBody": {
|
|
37031
|
-
"description": "batchFeaturesSchema",
|
|
37032
|
-
"required": true,
|
|
37033
|
-
"content": {
|
|
37034
|
-
"application/json": {
|
|
37035
|
-
"schema": {
|
|
37036
|
-
"$ref": "#/components/schemas/batchFeaturesSchema"
|
|
37037
|
-
}
|
|
37038
|
-
}
|
|
37039
|
-
}
|
|
37040
|
-
},
|
|
39300
|
+
"operationId": "getProjectStatus",
|
|
39301
|
+
"summary": "Get project status",
|
|
39302
|
+
"description": "This endpoint returns information on the status the project, including activities, health, resources, and aggregated flag lifecycle data.",
|
|
37041
39303
|
"responses": {
|
|
37042
39304
|
"200": {
|
|
37043
|
-
"description": "
|
|
37044
|
-
"content": {
|
|
37045
|
-
"application/json": {
|
|
37046
|
-
"schema": {
|
|
37047
|
-
"$ref": "#/components/schemas/validateArchiveFeaturesSchema"
|
|
37048
|
-
}
|
|
37049
|
-
}
|
|
37050
|
-
}
|
|
37051
|
-
},
|
|
37052
|
-
"400": {
|
|
37053
|
-
"description": "The request data does not match what we expect.",
|
|
39305
|
+
"description": "projectStatusSchema",
|
|
37054
39306
|
"content": {
|
|
37055
39307
|
"application/json": {
|
|
37056
39308
|
"schema": {
|
|
37057
|
-
"
|
|
37058
|
-
"properties": {
|
|
37059
|
-
"id": {
|
|
37060
|
-
"type": "string",
|
|
37061
|
-
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
37062
|
-
"description": "The ID of the error instance"
|
|
37063
|
-
},
|
|
37064
|
-
"name": {
|
|
37065
|
-
"type": "string",
|
|
37066
|
-
"example": "ValidationError",
|
|
37067
|
-
"description": "The name of the error kind"
|
|
37068
|
-
},
|
|
37069
|
-
"message": {
|
|
37070
|
-
"type": "string",
|
|
37071
|
-
"example": "The request payload you provided doesn't conform to the schema. The .parameters property should be object. You sent [].",
|
|
37072
|
-
"description": "A description of what went wrong."
|
|
37073
|
-
}
|
|
37074
|
-
}
|
|
39309
|
+
"$ref": "#/components/schemas/projectStatusSchema"
|
|
37075
39310
|
}
|
|
37076
39311
|
}
|
|
37077
39312
|
}
|
|
@@ -37130,8 +39365,8 @@
|
|
|
37130
39365
|
}
|
|
37131
39366
|
}
|
|
37132
39367
|
},
|
|
37133
|
-
"
|
|
37134
|
-
"description": "The
|
|
39368
|
+
"404": {
|
|
39369
|
+
"description": "The requested resource was not found.",
|
|
37135
39370
|
"content": {
|
|
37136
39371
|
"application/json": {
|
|
37137
39372
|
"schema": {
|
|
@@ -37144,12 +39379,12 @@
|
|
|
37144
39379
|
},
|
|
37145
39380
|
"name": {
|
|
37146
39381
|
"type": "string",
|
|
37147
|
-
"example": "
|
|
39382
|
+
"example": "NotFoundError",
|
|
37148
39383
|
"description": "The name of the error kind"
|
|
37149
39384
|
},
|
|
37150
39385
|
"message": {
|
|
37151
39386
|
"type": "string",
|
|
37152
|
-
"example": "
|
|
39387
|
+
"example": "Could not find the addon with ID \"12345\".",
|
|
37153
39388
|
"description": "A description of what went wrong."
|
|
37154
39389
|
}
|
|
37155
39390
|
}
|
|
@@ -37170,52 +39405,21 @@
|
|
|
37170
39405
|
]
|
|
37171
39406
|
}
|
|
37172
39407
|
},
|
|
37173
|
-
"/api/admin/projects/{projectId}/
|
|
37174
|
-
"
|
|
39408
|
+
"/api/admin/projects/{projectId}/features/{featureName}/lifecycle": {
|
|
39409
|
+
"get": {
|
|
37175
39410
|
"tags": [
|
|
37176
|
-
"
|
|
39411
|
+
"Unstable"
|
|
37177
39412
|
],
|
|
37178
|
-
"
|
|
37179
|
-
"description": "
|
|
37180
|
-
"
|
|
37181
|
-
"requestBody": {
|
|
37182
|
-
"description": "batchFeaturesSchema",
|
|
37183
|
-
"required": true,
|
|
37184
|
-
"content": {
|
|
37185
|
-
"application/json": {
|
|
37186
|
-
"schema": {
|
|
37187
|
-
"$ref": "#/components/schemas/batchFeaturesSchema"
|
|
37188
|
-
}
|
|
37189
|
-
}
|
|
37190
|
-
}
|
|
37191
|
-
},
|
|
39413
|
+
"summary": "Get feature lifecycle",
|
|
39414
|
+
"description": "Information about the lifecycle stages of the feature.",
|
|
39415
|
+
"operationId": "getFeatureLifecycle",
|
|
37192
39416
|
"responses": {
|
|
37193
|
-
"
|
|
37194
|
-
"description": "
|
|
37195
|
-
},
|
|
37196
|
-
"400": {
|
|
37197
|
-
"description": "The request data does not match what we expect.",
|
|
39417
|
+
"200": {
|
|
39418
|
+
"description": "featureLifecycleSchema",
|
|
37198
39419
|
"content": {
|
|
37199
39420
|
"application/json": {
|
|
37200
39421
|
"schema": {
|
|
37201
|
-
"
|
|
37202
|
-
"properties": {
|
|
37203
|
-
"id": {
|
|
37204
|
-
"type": "string",
|
|
37205
|
-
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
37206
|
-
"description": "The ID of the error instance"
|
|
37207
|
-
},
|
|
37208
|
-
"name": {
|
|
37209
|
-
"type": "string",
|
|
37210
|
-
"example": "ValidationError",
|
|
37211
|
-
"description": "The name of the error kind"
|
|
37212
|
-
},
|
|
37213
|
-
"message": {
|
|
37214
|
-
"type": "string",
|
|
37215
|
-
"example": "The request payload you provided doesn't conform to the schema. The .parameters property should be object. You sent [].",
|
|
37216
|
-
"description": "A description of what went wrong."
|
|
37217
|
-
}
|
|
37218
|
-
}
|
|
39422
|
+
"$ref": "#/components/schemas/featureLifecycleSchema"
|
|
37219
39423
|
}
|
|
37220
39424
|
}
|
|
37221
39425
|
}
|
|
@@ -37274,8 +39478,8 @@
|
|
|
37274
39478
|
}
|
|
37275
39479
|
}
|
|
37276
39480
|
},
|
|
37277
|
-
"
|
|
37278
|
-
"description": "The
|
|
39481
|
+
"404": {
|
|
39482
|
+
"description": "The requested resource was not found.",
|
|
37279
39483
|
"content": {
|
|
37280
39484
|
"application/json": {
|
|
37281
39485
|
"schema": {
|
|
@@ -37288,12 +39492,12 @@
|
|
|
37288
39492
|
},
|
|
37289
39493
|
"name": {
|
|
37290
39494
|
"type": "string",
|
|
37291
|
-
"example": "
|
|
39495
|
+
"example": "NotFoundError",
|
|
37292
39496
|
"description": "The name of the error kind"
|
|
37293
39497
|
},
|
|
37294
39498
|
"message": {
|
|
37295
39499
|
"type": "string",
|
|
37296
|
-
"example": "
|
|
39500
|
+
"example": "Could not find the addon with ID \"12345\".",
|
|
37297
39501
|
"description": "A description of what went wrong."
|
|
37298
39502
|
}
|
|
37299
39503
|
}
|
|
@@ -37310,28 +39514,40 @@
|
|
|
37310
39514
|
"schema": {
|
|
37311
39515
|
"type": "string"
|
|
37312
39516
|
}
|
|
39517
|
+
},
|
|
39518
|
+
{
|
|
39519
|
+
"name": "featureName",
|
|
39520
|
+
"in": "path",
|
|
39521
|
+
"required": true,
|
|
39522
|
+
"schema": {
|
|
39523
|
+
"type": "string"
|
|
39524
|
+
}
|
|
37313
39525
|
}
|
|
37314
39526
|
]
|
|
37315
39527
|
}
|
|
37316
39528
|
},
|
|
37317
|
-
"/api/admin/projects/{projectId}/
|
|
37318
|
-
"
|
|
39529
|
+
"/api/admin/projects/{projectId}/features/{featureName}/lifecycle/complete": {
|
|
39530
|
+
"post": {
|
|
37319
39531
|
"tags": [
|
|
37320
|
-
"
|
|
39532
|
+
"Unstable"
|
|
37321
39533
|
],
|
|
37322
|
-
"
|
|
37323
|
-
"
|
|
37324
|
-
"
|
|
37325
|
-
"
|
|
37326
|
-
"
|
|
37327
|
-
|
|
37328
|
-
|
|
37329
|
-
|
|
37330
|
-
|
|
37331
|
-
|
|
37332
|
-
}
|
|
39534
|
+
"summary": "Set feature completed",
|
|
39535
|
+
"description": "This will set the feature as completed.",
|
|
39536
|
+
"operationId": "complete",
|
|
39537
|
+
"requestBody": {
|
|
39538
|
+
"description": "featureLifecycleCompletedSchema",
|
|
39539
|
+
"required": true,
|
|
39540
|
+
"content": {
|
|
39541
|
+
"application/json": {
|
|
39542
|
+
"schema": {
|
|
39543
|
+
"$ref": "#/components/schemas/featureLifecycleCompletedSchema"
|
|
37333
39544
|
}
|
|
37334
39545
|
}
|
|
39546
|
+
}
|
|
39547
|
+
},
|
|
39548
|
+
"responses": {
|
|
39549
|
+
"200": {
|
|
39550
|
+
"description": "This response has no body."
|
|
37335
39551
|
},
|
|
37336
39552
|
"401": {
|
|
37337
39553
|
"description": "Authorization information is missing or invalid. Provide a valid API token as the `authorization` header, e.g. `authorization:*.*.my-admin-token`.",
|
|
@@ -37423,28 +39639,29 @@
|
|
|
37423
39639
|
"schema": {
|
|
37424
39640
|
"type": "string"
|
|
37425
39641
|
}
|
|
39642
|
+
},
|
|
39643
|
+
{
|
|
39644
|
+
"name": "featureName",
|
|
39645
|
+
"in": "path",
|
|
39646
|
+
"required": true,
|
|
39647
|
+
"schema": {
|
|
39648
|
+
"type": "string"
|
|
39649
|
+
}
|
|
37426
39650
|
}
|
|
37427
39651
|
]
|
|
37428
39652
|
}
|
|
37429
39653
|
},
|
|
37430
|
-
"/api/admin/projects/{projectId}/
|
|
37431
|
-
"
|
|
39654
|
+
"/api/admin/projects/{projectId}/features/{featureName}/lifecycle/uncomplete": {
|
|
39655
|
+
"post": {
|
|
37432
39656
|
"tags": [
|
|
37433
39657
|
"Unstable"
|
|
37434
39658
|
],
|
|
37435
|
-
"
|
|
37436
|
-
"
|
|
37437
|
-
"
|
|
39659
|
+
"summary": "Set feature uncompleted",
|
|
39660
|
+
"description": "This will set the feature as uncompleted.",
|
|
39661
|
+
"operationId": "uncomplete",
|
|
37438
39662
|
"responses": {
|
|
37439
39663
|
"200": {
|
|
37440
|
-
"description": "
|
|
37441
|
-
"content": {
|
|
37442
|
-
"application/json": {
|
|
37443
|
-
"schema": {
|
|
37444
|
-
"$ref": "#/components/schemas/projectStatusSchema"
|
|
37445
|
-
}
|
|
37446
|
-
}
|
|
37447
|
-
}
|
|
39664
|
+
"description": "This response has no body."
|
|
37448
39665
|
},
|
|
37449
39666
|
"401": {
|
|
37450
39667
|
"description": "Authorization information is missing or invalid. Provide a valid API token as the `authorization` header, e.g. `authorization:*.*.my-admin-token`.",
|
|
@@ -37536,25 +39753,53 @@
|
|
|
37536
39753
|
"schema": {
|
|
37537
39754
|
"type": "string"
|
|
37538
39755
|
}
|
|
39756
|
+
},
|
|
39757
|
+
{
|
|
39758
|
+
"name": "featureName",
|
|
39759
|
+
"in": "path",
|
|
39760
|
+
"required": true,
|
|
39761
|
+
"schema": {
|
|
39762
|
+
"type": "string"
|
|
39763
|
+
}
|
|
37539
39764
|
}
|
|
37540
39765
|
]
|
|
37541
39766
|
}
|
|
37542
39767
|
},
|
|
37543
|
-
"/api/admin/projects/{projectId}/features/{featureName}/
|
|
37544
|
-
"
|
|
39768
|
+
"/api/admin/projects/{projectId}/features/{featureName}/link": {
|
|
39769
|
+
"post": {
|
|
37545
39770
|
"tags": [
|
|
37546
39771
|
"Unstable"
|
|
37547
39772
|
],
|
|
37548
|
-
"
|
|
37549
|
-
"
|
|
37550
|
-
"
|
|
39773
|
+
"operationId": "createFeatureLink",
|
|
39774
|
+
"summary": "Create a feature link",
|
|
39775
|
+
"description": "Create a new link for a feature.",
|
|
37551
39776
|
"responses": {
|
|
37552
|
-
"
|
|
37553
|
-
"description": "
|
|
39777
|
+
"204": {
|
|
39778
|
+
"description": "This response has no body."
|
|
39779
|
+
},
|
|
39780
|
+
"400": {
|
|
39781
|
+
"description": "The request data does not match what we expect.",
|
|
37554
39782
|
"content": {
|
|
37555
39783
|
"application/json": {
|
|
37556
39784
|
"schema": {
|
|
37557
|
-
"
|
|
39785
|
+
"type": "object",
|
|
39786
|
+
"properties": {
|
|
39787
|
+
"id": {
|
|
39788
|
+
"type": "string",
|
|
39789
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
39790
|
+
"description": "The ID of the error instance"
|
|
39791
|
+
},
|
|
39792
|
+
"name": {
|
|
39793
|
+
"type": "string",
|
|
39794
|
+
"example": "ValidationError",
|
|
39795
|
+
"description": "The name of the error kind"
|
|
39796
|
+
},
|
|
39797
|
+
"message": {
|
|
39798
|
+
"type": "string",
|
|
39799
|
+
"example": "The request payload you provided doesn't conform to the schema. The .parameters property should be object. You sent [].",
|
|
39800
|
+
"description": "A description of what went wrong."
|
|
39801
|
+
}
|
|
39802
|
+
}
|
|
37558
39803
|
}
|
|
37559
39804
|
}
|
|
37560
39805
|
}
|
|
@@ -37613,8 +39858,8 @@
|
|
|
37613
39858
|
}
|
|
37614
39859
|
}
|
|
37615
39860
|
},
|
|
37616
|
-
"
|
|
37617
|
-
"description": "The
|
|
39861
|
+
"415": {
|
|
39862
|
+
"description": "The operation does not support request payloads of the provided type. Please ensure that you're using one of the listed payload types and that you have specified the right content type in the \"content-type\" header.",
|
|
37618
39863
|
"content": {
|
|
37619
39864
|
"application/json": {
|
|
37620
39865
|
"schema": {
|
|
@@ -37627,12 +39872,12 @@
|
|
|
37627
39872
|
},
|
|
37628
39873
|
"name": {
|
|
37629
39874
|
"type": "string",
|
|
37630
|
-
"example": "
|
|
39875
|
+
"example": "ContentTypeerror",
|
|
37631
39876
|
"description": "The name of the error kind"
|
|
37632
39877
|
},
|
|
37633
39878
|
"message": {
|
|
37634
39879
|
"type": "string",
|
|
37635
|
-
"example": "
|
|
39880
|
+
"example": "We do not accept the content-type you provided (application/xml). Try using one of the content-types we do accept instead (application/json) and make sure the body is in the corresponding format.",
|
|
37636
39881
|
"description": "A description of what went wrong."
|
|
37637
39882
|
}
|
|
37638
39883
|
}
|
|
@@ -37641,6 +39886,17 @@
|
|
|
37641
39886
|
}
|
|
37642
39887
|
}
|
|
37643
39888
|
},
|
|
39889
|
+
"requestBody": {
|
|
39890
|
+
"description": "featureLinkSchema",
|
|
39891
|
+
"required": true,
|
|
39892
|
+
"content": {
|
|
39893
|
+
"application/json": {
|
|
39894
|
+
"schema": {
|
|
39895
|
+
"$ref": "#/components/schemas/featureLinkSchema"
|
|
39896
|
+
}
|
|
39897
|
+
}
|
|
39898
|
+
}
|
|
39899
|
+
},
|
|
37644
39900
|
"parameters": [
|
|
37645
39901
|
{
|
|
37646
39902
|
"name": "projectId",
|
|
@@ -37661,29 +39917,45 @@
|
|
|
37661
39917
|
]
|
|
37662
39918
|
}
|
|
37663
39919
|
},
|
|
37664
|
-
"/api/admin/projects/{projectId}/features/{featureName}/
|
|
37665
|
-
"
|
|
39920
|
+
"/api/admin/projects/{projectId}/features/{featureName}/link/{linkId}": {
|
|
39921
|
+
"put": {
|
|
37666
39922
|
"tags": [
|
|
37667
39923
|
"Unstable"
|
|
37668
39924
|
],
|
|
37669
|
-
"
|
|
37670
|
-
"
|
|
37671
|
-
"
|
|
37672
|
-
"requestBody": {
|
|
37673
|
-
"description": "featureLifecycleCompletedSchema",
|
|
37674
|
-
"required": true,
|
|
37675
|
-
"content": {
|
|
37676
|
-
"application/json": {
|
|
37677
|
-
"schema": {
|
|
37678
|
-
"$ref": "#/components/schemas/featureLifecycleCompletedSchema"
|
|
37679
|
-
}
|
|
37680
|
-
}
|
|
37681
|
-
}
|
|
37682
|
-
},
|
|
39925
|
+
"operationId": "updateFeatureLink",
|
|
39926
|
+
"summary": "Update a feature link",
|
|
39927
|
+
"description": "Update an existing feature link.",
|
|
37683
39928
|
"responses": {
|
|
37684
|
-
"
|
|
39929
|
+
"204": {
|
|
37685
39930
|
"description": "This response has no body."
|
|
37686
39931
|
},
|
|
39932
|
+
"400": {
|
|
39933
|
+
"description": "The request data does not match what we expect.",
|
|
39934
|
+
"content": {
|
|
39935
|
+
"application/json": {
|
|
39936
|
+
"schema": {
|
|
39937
|
+
"type": "object",
|
|
39938
|
+
"properties": {
|
|
39939
|
+
"id": {
|
|
39940
|
+
"type": "string",
|
|
39941
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
39942
|
+
"description": "The ID of the error instance"
|
|
39943
|
+
},
|
|
39944
|
+
"name": {
|
|
39945
|
+
"type": "string",
|
|
39946
|
+
"example": "ValidationError",
|
|
39947
|
+
"description": "The name of the error kind"
|
|
39948
|
+
},
|
|
39949
|
+
"message": {
|
|
39950
|
+
"type": "string",
|
|
39951
|
+
"example": "The request payload you provided doesn't conform to the schema. The .parameters property should be object. You sent [].",
|
|
39952
|
+
"description": "A description of what went wrong."
|
|
39953
|
+
}
|
|
39954
|
+
}
|
|
39955
|
+
}
|
|
39956
|
+
}
|
|
39957
|
+
}
|
|
39958
|
+
},
|
|
37687
39959
|
"401": {
|
|
37688
39960
|
"description": "Authorization information is missing or invalid. Provide a valid API token as the `authorization` header, e.g. `authorization:*.*.my-admin-token`.",
|
|
37689
39961
|
"content": {
|
|
@@ -37764,6 +40036,44 @@
|
|
|
37764
40036
|
}
|
|
37765
40037
|
}
|
|
37766
40038
|
}
|
|
40039
|
+
},
|
|
40040
|
+
"415": {
|
|
40041
|
+
"description": "The operation does not support request payloads of the provided type. Please ensure that you're using one of the listed payload types and that you have specified the right content type in the \"content-type\" header.",
|
|
40042
|
+
"content": {
|
|
40043
|
+
"application/json": {
|
|
40044
|
+
"schema": {
|
|
40045
|
+
"type": "object",
|
|
40046
|
+
"properties": {
|
|
40047
|
+
"id": {
|
|
40048
|
+
"type": "string",
|
|
40049
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
40050
|
+
"description": "The ID of the error instance"
|
|
40051
|
+
},
|
|
40052
|
+
"name": {
|
|
40053
|
+
"type": "string",
|
|
40054
|
+
"example": "ContentTypeerror",
|
|
40055
|
+
"description": "The name of the error kind"
|
|
40056
|
+
},
|
|
40057
|
+
"message": {
|
|
40058
|
+
"type": "string",
|
|
40059
|
+
"example": "We do not accept the content-type you provided (application/xml). Try using one of the content-types we do accept instead (application/json) and make sure the body is in the corresponding format.",
|
|
40060
|
+
"description": "A description of what went wrong."
|
|
40061
|
+
}
|
|
40062
|
+
}
|
|
40063
|
+
}
|
|
40064
|
+
}
|
|
40065
|
+
}
|
|
40066
|
+
}
|
|
40067
|
+
},
|
|
40068
|
+
"requestBody": {
|
|
40069
|
+
"description": "featureLinkSchema",
|
|
40070
|
+
"required": true,
|
|
40071
|
+
"content": {
|
|
40072
|
+
"application/json": {
|
|
40073
|
+
"schema": {
|
|
40074
|
+
"$ref": "#/components/schemas/featureLinkSchema"
|
|
40075
|
+
}
|
|
40076
|
+
}
|
|
37767
40077
|
}
|
|
37768
40078
|
},
|
|
37769
40079
|
"parameters": [
|
|
@@ -37782,20 +40092,26 @@
|
|
|
37782
40092
|
"schema": {
|
|
37783
40093
|
"type": "string"
|
|
37784
40094
|
}
|
|
40095
|
+
},
|
|
40096
|
+
{
|
|
40097
|
+
"name": "linkId",
|
|
40098
|
+
"in": "path",
|
|
40099
|
+
"required": true,
|
|
40100
|
+
"schema": {
|
|
40101
|
+
"type": "string"
|
|
40102
|
+
}
|
|
37785
40103
|
}
|
|
37786
40104
|
]
|
|
37787
|
-
}
|
|
37788
|
-
|
|
37789
|
-
"/api/admin/projects/{projectId}/features/{featureName}/lifecycle/uncomplete": {
|
|
37790
|
-
"post": {
|
|
40105
|
+
},
|
|
40106
|
+
"delete": {
|
|
37791
40107
|
"tags": [
|
|
37792
40108
|
"Unstable"
|
|
37793
40109
|
],
|
|
37794
|
-
"
|
|
37795
|
-
"
|
|
37796
|
-
"
|
|
40110
|
+
"operationId": "deleteFeatureLink",
|
|
40111
|
+
"summary": "Delete a feature link",
|
|
40112
|
+
"description": "Delete a feature link by id.",
|
|
37797
40113
|
"responses": {
|
|
37798
|
-
"
|
|
40114
|
+
"204": {
|
|
37799
40115
|
"description": "This response has no body."
|
|
37800
40116
|
},
|
|
37801
40117
|
"401": {
|
|
@@ -37896,10 +40212,121 @@
|
|
|
37896
40212
|
"schema": {
|
|
37897
40213
|
"type": "string"
|
|
37898
40214
|
}
|
|
40215
|
+
},
|
|
40216
|
+
{
|
|
40217
|
+
"name": "linkId",
|
|
40218
|
+
"in": "path",
|
|
40219
|
+
"required": true,
|
|
40220
|
+
"schema": {
|
|
40221
|
+
"type": "string"
|
|
40222
|
+
}
|
|
37899
40223
|
}
|
|
37900
40224
|
]
|
|
37901
40225
|
}
|
|
37902
40226
|
},
|
|
40227
|
+
"/api/admin/lifecycle/count": {
|
|
40228
|
+
"get": {
|
|
40229
|
+
"tags": [
|
|
40230
|
+
"Unstable"
|
|
40231
|
+
],
|
|
40232
|
+
"summary": "Get all features lifecycle stage count",
|
|
40233
|
+
"description": "Information about the number of features in each lifecycle stage.",
|
|
40234
|
+
"operationId": "getFeatureLifecycleStageCount",
|
|
40235
|
+
"responses": {
|
|
40236
|
+
"200": {
|
|
40237
|
+
"description": "featureLifecycleCountSchema",
|
|
40238
|
+
"content": {
|
|
40239
|
+
"application/json": {
|
|
40240
|
+
"schema": {
|
|
40241
|
+
"$ref": "#/components/schemas/featureLifecycleCountSchema"
|
|
40242
|
+
}
|
|
40243
|
+
}
|
|
40244
|
+
}
|
|
40245
|
+
},
|
|
40246
|
+
"401": {
|
|
40247
|
+
"description": "Authorization information is missing or invalid. Provide a valid API token as the `authorization` header, e.g. `authorization:*.*.my-admin-token`.",
|
|
40248
|
+
"content": {
|
|
40249
|
+
"application/json": {
|
|
40250
|
+
"schema": {
|
|
40251
|
+
"type": "object",
|
|
40252
|
+
"properties": {
|
|
40253
|
+
"id": {
|
|
40254
|
+
"type": "string",
|
|
40255
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
40256
|
+
"description": "The ID of the error instance"
|
|
40257
|
+
},
|
|
40258
|
+
"name": {
|
|
40259
|
+
"type": "string",
|
|
40260
|
+
"example": "AuthenticationRequired",
|
|
40261
|
+
"description": "The name of the error kind"
|
|
40262
|
+
},
|
|
40263
|
+
"message": {
|
|
40264
|
+
"type": "string",
|
|
40265
|
+
"example": "You must log in to use Unleash. Your request had no authorization header, so we could not authorize you. Try logging in at /auth/simple/login.",
|
|
40266
|
+
"description": "A description of what went wrong."
|
|
40267
|
+
}
|
|
40268
|
+
}
|
|
40269
|
+
}
|
|
40270
|
+
}
|
|
40271
|
+
}
|
|
40272
|
+
},
|
|
40273
|
+
"403": {
|
|
40274
|
+
"description": "The provided user credentials are valid, but the user does not have the necessary permissions to perform this operation",
|
|
40275
|
+
"content": {
|
|
40276
|
+
"application/json": {
|
|
40277
|
+
"schema": {
|
|
40278
|
+
"type": "object",
|
|
40279
|
+
"properties": {
|
|
40280
|
+
"id": {
|
|
40281
|
+
"type": "string",
|
|
40282
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
40283
|
+
"description": "The ID of the error instance"
|
|
40284
|
+
},
|
|
40285
|
+
"name": {
|
|
40286
|
+
"type": "string",
|
|
40287
|
+
"example": "NoAccessError",
|
|
40288
|
+
"description": "The name of the error kind"
|
|
40289
|
+
},
|
|
40290
|
+
"message": {
|
|
40291
|
+
"type": "string",
|
|
40292
|
+
"example": "You need the \"UPDATE_ADDON\" permission to perform this action in the \"development\" environment.",
|
|
40293
|
+
"description": "A description of what went wrong."
|
|
40294
|
+
}
|
|
40295
|
+
}
|
|
40296
|
+
}
|
|
40297
|
+
}
|
|
40298
|
+
}
|
|
40299
|
+
},
|
|
40300
|
+
"404": {
|
|
40301
|
+
"description": "The requested resource was not found.",
|
|
40302
|
+
"content": {
|
|
40303
|
+
"application/json": {
|
|
40304
|
+
"schema": {
|
|
40305
|
+
"type": "object",
|
|
40306
|
+
"properties": {
|
|
40307
|
+
"id": {
|
|
40308
|
+
"type": "string",
|
|
40309
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
40310
|
+
"description": "The ID of the error instance"
|
|
40311
|
+
},
|
|
40312
|
+
"name": {
|
|
40313
|
+
"type": "string",
|
|
40314
|
+
"example": "NotFoundError",
|
|
40315
|
+
"description": "The name of the error kind"
|
|
40316
|
+
},
|
|
40317
|
+
"message": {
|
|
40318
|
+
"type": "string",
|
|
40319
|
+
"example": "Could not find the addon with ID \"12345\".",
|
|
40320
|
+
"description": "A description of what went wrong."
|
|
40321
|
+
}
|
|
40322
|
+
}
|
|
40323
|
+
}
|
|
40324
|
+
}
|
|
40325
|
+
}
|
|
40326
|
+
}
|
|
40327
|
+
}
|
|
40328
|
+
}
|
|
40329
|
+
},
|
|
37903
40330
|
"/api/admin/personal-dashboard": {
|
|
37904
40331
|
"get": {
|
|
37905
40332
|
"tags": [
|
|
@@ -40858,6 +43285,16 @@
|
|
|
40858
43285
|
"description": "The state of the feature active/stale. The state can be specified with an operator. The supported operators are IS, IS_NOT, IS_ANY_OF, IS_NONE_OF.",
|
|
40859
43286
|
"in": "query"
|
|
40860
43287
|
},
|
|
43288
|
+
{
|
|
43289
|
+
"name": "lifecycle",
|
|
43290
|
+
"schema": {
|
|
43291
|
+
"type": "string",
|
|
43292
|
+
"example": "IS:initial",
|
|
43293
|
+
"pattern": "^(IS|IS_NOT|IS_ANY_OF|IS_NONE_OF):(.*?)(,([a-zA-Z0-9_]+))*$"
|
|
43294
|
+
},
|
|
43295
|
+
"description": "The lifecycle stage of the feature. The stagee can be specified with an operator. The supported operators are IS, IS_NOT, IS_ANY_OF, IS_NONE_OF.",
|
|
43296
|
+
"in": "query"
|
|
43297
|
+
},
|
|
40861
43298
|
{
|
|
40862
43299
|
"name": "type",
|
|
40863
43300
|
"schema": {
|
|
@@ -41267,28 +43704,6 @@
|
|
|
41267
43704
|
}
|
|
41268
43705
|
}
|
|
41269
43706
|
},
|
|
41270
|
-
"/api/client/delta": {
|
|
41271
|
-
"get": {
|
|
41272
|
-
"summary": "Get partial updates (SDK)",
|
|
41273
|
-
"description": "Initially returns the full set of feature flags available to the provided API key. When called again with the returned etag, only returns the flags that have changed",
|
|
41274
|
-
"operationId": "getDelta",
|
|
41275
|
-
"tags": [
|
|
41276
|
-
"Unstable"
|
|
41277
|
-
],
|
|
41278
|
-
"responses": {
|
|
41279
|
-
"200": {
|
|
41280
|
-
"description": "clientFeaturesDeltaSchema",
|
|
41281
|
-
"content": {
|
|
41282
|
-
"application/json": {
|
|
41283
|
-
"schema": {
|
|
41284
|
-
"$ref": "#/components/schemas/clientFeaturesDeltaSchema"
|
|
41285
|
-
}
|
|
41286
|
-
}
|
|
41287
|
-
}
|
|
41288
|
-
}
|
|
41289
|
-
}
|
|
41290
|
-
}
|
|
41291
|
-
},
|
|
41292
43707
|
"/api/client/features/{featureName}": {
|
|
41293
43708
|
"get": {
|
|
41294
43709
|
"operationId": "getClientFeature",
|
|
@@ -41606,6 +44021,91 @@
|
|
|
41606
44021
|
},
|
|
41607
44022
|
"summary": "Retrieve enabled feature flags for the provided context.",
|
|
41608
44023
|
"description": "This endpoint returns the list of feature flags that the frontend API evaluates to enabled for the given context. Context values are provided as query parameters. If the Frontend API is disabled 404 is returned."
|
|
44024
|
+
},
|
|
44025
|
+
"post": {
|
|
44026
|
+
"tags": [
|
|
44027
|
+
"Frontend API"
|
|
44028
|
+
],
|
|
44029
|
+
"operationId": "getFrontendApiFeaturesWithPost",
|
|
44030
|
+
"requestBody": {
|
|
44031
|
+
"description": "frontendApiFeaturesPostSchema",
|
|
44032
|
+
"required": true,
|
|
44033
|
+
"content": {
|
|
44034
|
+
"application/json": {
|
|
44035
|
+
"schema": {
|
|
44036
|
+
"$ref": "#/components/schemas/frontendApiFeaturesPostSchema"
|
|
44037
|
+
}
|
|
44038
|
+
}
|
|
44039
|
+
}
|
|
44040
|
+
},
|
|
44041
|
+
"responses": {
|
|
44042
|
+
"200": {
|
|
44043
|
+
"description": "frontendApiFeaturesSchema",
|
|
44044
|
+
"content": {
|
|
44045
|
+
"application/json": {
|
|
44046
|
+
"schema": {
|
|
44047
|
+
"$ref": "#/components/schemas/frontendApiFeaturesSchema"
|
|
44048
|
+
}
|
|
44049
|
+
}
|
|
44050
|
+
}
|
|
44051
|
+
},
|
|
44052
|
+
"401": {
|
|
44053
|
+
"description": "Authorization information is missing or invalid. Provide a valid API token as the `authorization` header, e.g. `authorization:*.*.my-admin-token`.",
|
|
44054
|
+
"content": {
|
|
44055
|
+
"application/json": {
|
|
44056
|
+
"schema": {
|
|
44057
|
+
"type": "object",
|
|
44058
|
+
"properties": {
|
|
44059
|
+
"id": {
|
|
44060
|
+
"type": "string",
|
|
44061
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
44062
|
+
"description": "The ID of the error instance"
|
|
44063
|
+
},
|
|
44064
|
+
"name": {
|
|
44065
|
+
"type": "string",
|
|
44066
|
+
"example": "AuthenticationRequired",
|
|
44067
|
+
"description": "The name of the error kind"
|
|
44068
|
+
},
|
|
44069
|
+
"message": {
|
|
44070
|
+
"type": "string",
|
|
44071
|
+
"example": "You must log in to use Unleash. Your request had no authorization header, so we could not authorize you. Try logging in at /auth/simple/login.",
|
|
44072
|
+
"description": "A description of what went wrong."
|
|
44073
|
+
}
|
|
44074
|
+
}
|
|
44075
|
+
}
|
|
44076
|
+
}
|
|
44077
|
+
}
|
|
44078
|
+
},
|
|
44079
|
+
"404": {
|
|
44080
|
+
"description": "The requested resource was not found.",
|
|
44081
|
+
"content": {
|
|
44082
|
+
"application/json": {
|
|
44083
|
+
"schema": {
|
|
44084
|
+
"type": "object",
|
|
44085
|
+
"properties": {
|
|
44086
|
+
"id": {
|
|
44087
|
+
"type": "string",
|
|
44088
|
+
"example": "9c40958a-daac-400e-98fb-3bb438567008",
|
|
44089
|
+
"description": "The ID of the error instance"
|
|
44090
|
+
},
|
|
44091
|
+
"name": {
|
|
44092
|
+
"type": "string",
|
|
44093
|
+
"example": "NotFoundError",
|
|
44094
|
+
"description": "The name of the error kind"
|
|
44095
|
+
},
|
|
44096
|
+
"message": {
|
|
44097
|
+
"type": "string",
|
|
44098
|
+
"example": "Could not find the addon with ID \"12345\".",
|
|
44099
|
+
"description": "A description of what went wrong."
|
|
44100
|
+
}
|
|
44101
|
+
}
|
|
44102
|
+
}
|
|
44103
|
+
}
|
|
44104
|
+
}
|
|
44105
|
+
}
|
|
44106
|
+
},
|
|
44107
|
+
"summary": "Retrieve enabled feature flags for the provided context, using POST.",
|
|
44108
|
+
"description": "This endpoint returns the list of feature flags that the frontend API evaluates to enabled for the given context, using POST. Context values are provided as a `context` property in the request body. If the Frontend API is disabled 404 is returned."
|
|
41609
44109
|
}
|
|
41610
44110
|
},
|
|
41611
44111
|
"/api/frontend/client/metrics": {
|