@oneuptime/common 11.3.19 → 11.3.21

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.
Files changed (77) hide show
  1. package/Models/DatabaseModels/EnterpriseLicenseInstance.ts +173 -0
  2. package/Models/DatabaseModels/GlobalConfig.ts +39 -0
  3. package/Models/DatabaseModels/Index.ts +2 -0
  4. package/Server/API/DashboardAPI.ts +221 -0
  5. package/Server/API/EnterpriseLicenseAPI.ts +279 -12
  6. package/Server/API/GlobalConfigAPI.ts +81 -16
  7. package/Server/API/StatusPageAPI.ts +894 -791
  8. package/Server/EnvironmentConfig.ts +9 -0
  9. package/Server/Infrastructure/Postgres/SchemaMigrations/1783161406136-AddInstanceIdToGlobalConfig.ts +23 -0
  10. package/Server/Infrastructure/Postgres/SchemaMigrations/1783226868418-AddEnterpriseLicenseInstance.ts +47 -0
  11. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +4 -0
  12. package/Server/Services/EnterpriseLicenseInstanceService.ts +10 -0
  13. package/Server/Services/Index.ts +2 -0
  14. package/Server/Services/IoTDeviceService.ts +99 -4
  15. package/Server/Services/StatusPageService.ts +104 -45
  16. package/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.ts +6 -4
  17. package/Server/Utils/Monitor/MonitorCriteriaDataExtractor.ts +7 -6
  18. package/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.ts +6 -4
  19. package/Server/Utils/Telemetry/IoTSnapshotScan.ts +45 -7
  20. package/ServiceRoute.ts +4 -0
  21. package/Tests/Server/Services/IoTDeviceService.test.ts +280 -0
  22. package/Tests/Server/Utils/Monitor/Criteria/TelemetryStepMetricAlias.test.ts +390 -0
  23. package/Tests/Server/Utils/Telemetry/IoTSnapshotScan.test.ts +202 -0
  24. package/Tests/Utils/EnterpriseLicenseUsage.test.ts +165 -0
  25. package/Types/EnterpriseLicense/EnterpriseLicenseInstanceSummary.ts +18 -0
  26. package/Types/Monitor/MonitorStep.ts +32 -0
  27. package/UI/Components/EditionLabel/EditionLabel.tsx +172 -0
  28. package/Utils/EnterpriseLicense/EnterpriseLicenseUsage.ts +125 -0
  29. package/build/dist/Models/DatabaseModels/EnterpriseLicenseInstance.js +197 -0
  30. package/build/dist/Models/DatabaseModels/EnterpriseLicenseInstance.js.map +1 -0
  31. package/build/dist/Models/DatabaseModels/GlobalConfig.js +39 -0
  32. package/build/dist/Models/DatabaseModels/GlobalConfig.js.map +1 -1
  33. package/build/dist/Models/DatabaseModels/Index.js +2 -0
  34. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  35. package/build/dist/Server/API/DashboardAPI.js +166 -16
  36. package/build/dist/Server/API/DashboardAPI.js.map +1 -1
  37. package/build/dist/Server/API/EnterpriseLicenseAPI.js +203 -13
  38. package/build/dist/Server/API/EnterpriseLicenseAPI.js.map +1 -1
  39. package/build/dist/Server/API/GlobalConfigAPI.js +62 -15
  40. package/build/dist/Server/API/GlobalConfigAPI.js.map +1 -1
  41. package/build/dist/Server/API/StatusPageAPI.js +74 -31
  42. package/build/dist/Server/API/StatusPageAPI.js.map +1 -1
  43. package/build/dist/Server/EnvironmentConfig.js +6 -0
  44. package/build/dist/Server/EnvironmentConfig.js.map +1 -1
  45. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783161406136-AddInstanceIdToGlobalConfig.js +14 -0
  46. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783161406136-AddInstanceIdToGlobalConfig.js.map +1 -0
  47. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783226868418-AddEnterpriseLicenseInstance.js +22 -0
  48. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783226868418-AddEnterpriseLicenseInstance.js.map +1 -0
  49. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +4 -0
  50. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  51. package/build/dist/Server/Services/EnterpriseLicenseInstanceService.js +9 -0
  52. package/build/dist/Server/Services/EnterpriseLicenseInstanceService.js.map +1 -0
  53. package/build/dist/Server/Services/Index.js +2 -0
  54. package/build/dist/Server/Services/Index.js.map +1 -1
  55. package/build/dist/Server/Services/IoTDeviceService.js +66 -4
  56. package/build/dist/Server/Services/IoTDeviceService.js.map +1 -1
  57. package/build/dist/Server/Services/StatusPageService.js +91 -43
  58. package/build/dist/Server/Services/StatusPageService.js.map +1 -1
  59. package/build/dist/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.js +4 -5
  60. package/build/dist/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.js.map +1 -1
  61. package/build/dist/Server/Utils/Monitor/MonitorCriteriaDataExtractor.js +6 -5
  62. package/build/dist/Server/Utils/Monitor/MonitorCriteriaDataExtractor.js.map +1 -1
  63. package/build/dist/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.js +9 -9
  64. package/build/dist/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.js.map +1 -1
  65. package/build/dist/Server/Utils/Telemetry/IoTSnapshotScan.js +33 -2
  66. package/build/dist/Server/Utils/Telemetry/IoTSnapshotScan.js.map +1 -1
  67. package/build/dist/ServiceRoute.js +1 -0
  68. package/build/dist/ServiceRoute.js.map +1 -1
  69. package/build/dist/Types/EnterpriseLicense/EnterpriseLicenseInstanceSummary.js +2 -0
  70. package/build/dist/Types/EnterpriseLicense/EnterpriseLicenseInstanceSummary.js.map +1 -0
  71. package/build/dist/Types/Monitor/MonitorStep.js +25 -0
  72. package/build/dist/Types/Monitor/MonitorStep.js.map +1 -1
  73. package/build/dist/UI/Components/EditionLabel/EditionLabel.js +92 -0
  74. package/build/dist/UI/Components/EditionLabel/EditionLabel.js.map +1 -1
  75. package/build/dist/Utils/EnterpriseLicense/EnterpriseLicenseUsage.js +83 -0
  76. package/build/dist/Utils/EnterpriseLicense/EnterpriseLicenseUsage.js.map +1 -0
  77. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"EnterpriseLicenseAPI.js","sourceRoot":"","sources":["../../../../Server/API/EnterpriseLicenseAPI.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EnterpriseLicenseAPI.js","sourceRoot":"","sources":["../../../../Server/API/EnterpriseLicenseAPI.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ import ObjectID from "../../Types/ObjectID";
6
6
  import BadDataException from "../../Types/Exception/BadDataException";
7
7
  import API from "../../Utils/API";
8
8
  import HTTPErrorResponse from "../../Types/API/HTTPErrorResponse";
9
- import { EnterpriseLicenseValidationUrl } from "../EnvironmentConfig";
9
+ import { EnterpriseLicenseValidationUrl, Host } from "../EnvironmentConfig";
10
10
  import UserMiddleware from "../Middleware/UserAuthorization";
11
11
  export default class GlobalConfigAPI extends BaseAPI {
12
12
  constructor() {
@@ -31,7 +31,8 @@ export default class GlobalConfigAPI extends BaseAPI {
31
31
  next(err);
32
32
  }
33
33
  });
34
- this.router.get(`${(_b = new this.entityType().getCrudApiPath()) === null || _b === void 0 ? void 0 : _b.toString()}/license`, async (req, res, next) => {
34
+ this.router.get(`${(_b = new this.entityType().getCrudApiPath()) === null || _b === void 0 ? void 0 : _b.toString()}/license`, UserMiddleware.getUserMiddleware, async (req, res, next) => {
35
+ var _a;
35
36
  try {
36
37
  const config = await GlobalConfigService.findOneById({
37
38
  id: ObjectID.getZeroObjectID(),
@@ -43,18 +44,35 @@ export default class GlobalConfigAPI extends BaseAPI {
43
44
  enterpriseLicenseUserLimit: true,
44
45
  enterpriseLicenseCurrentUserCount: true,
45
46
  enterpriseLicenseUserCountUpdatedAt: true,
47
+ enterpriseLicenseInstances: true,
48
+ instanceId: true,
46
49
  },
47
50
  props: {
48
51
  isRoot: true,
49
52
  },
50
53
  });
54
+ /*
55
+ * This route also serves the login page (before sign-in), so it
56
+ * cannot require authentication outright. Anonymous callers only
57
+ * get enough to render the edition pill — the license key, token
58
+ * and instance topology require a signed-in user.
59
+ */
60
+ const isAuthenticatedUser = Boolean((_a = req.userAuthorization) === null || _a === void 0 ? void 0 : _a.userId);
61
+ const licenseValid = Boolean((config === null || config === void 0 ? void 0 : config.enterpriseLicenseToken) &&
62
+ (config === null || config === void 0 ? void 0 : config.enterpriseLicenseExpiresAt) &&
63
+ config.enterpriseLicenseExpiresAt.getTime() > Date.now());
51
64
  const responseBody = {
52
65
  companyName: (config === null || config === void 0 ? void 0 : config.enterpriseCompanyName) || null,
53
66
  expiresAt: (config === null || config === void 0 ? void 0 : config.enterpriseLicenseExpiresAt)
54
67
  ? config.enterpriseLicenseExpiresAt.toISOString()
55
68
  : null,
56
- licenseKey: (config === null || config === void 0 ? void 0 : config.enterpriseLicenseKey) || null,
57
- token: (config === null || config === void 0 ? void 0 : config.enterpriseLicenseToken) || null,
69
+ licenseKey: isAuthenticatedUser
70
+ ? (config === null || config === void 0 ? void 0 : config.enterpriseLicenseKey) || null
71
+ : null,
72
+ token: isAuthenticatedUser
73
+ ? (config === null || config === void 0 ? void 0 : config.enterpriseLicenseToken) || null
74
+ : null,
75
+ licenseValid: licenseValid,
58
76
  userLimit: typeof (config === null || config === void 0 ? void 0 : config.enterpriseLicenseUserLimit) === "number"
59
77
  ? config.enterpriseLicenseUserLimit
60
78
  : null,
@@ -64,6 +82,13 @@ export default class GlobalConfigAPI extends BaseAPI {
64
82
  userCountUpdatedAt: (config === null || config === void 0 ? void 0 : config.enterpriseLicenseUserCountUpdatedAt)
65
83
  ? config.enterpriseLicenseUserCountUpdatedAt.toISOString()
66
84
  : null,
85
+ instances: isAuthenticatedUser &&
86
+ Array.isArray(config === null || config === void 0 ? void 0 : config.enterpriseLicenseInstances)
87
+ ? config.enterpriseLicenseInstances
88
+ : [],
89
+ instanceId: isAuthenticatedUser && (config === null || config === void 0 ? void 0 : config.instanceId)
90
+ ? config.instanceId.toString()
91
+ : null,
67
92
  };
68
93
  return Response.sendJsonObjectResponse(req, res, responseBody);
69
94
  }
@@ -78,10 +103,31 @@ export default class GlobalConfigAPI extends BaseAPI {
78
103
  if (!licenseKey) {
79
104
  throw new BadDataException("License key is required");
80
105
  }
106
+ const globalConfigId = ObjectID.getZeroObjectID();
107
+ const existingConfig = await GlobalConfigService.findOneById({
108
+ id: globalConfigId,
109
+ select: {
110
+ _id: true,
111
+ instanceId: true,
112
+ },
113
+ props: {
114
+ isRoot: true,
115
+ ignoreHooks: true,
116
+ },
117
+ });
118
+ /*
119
+ * Send this instance's id and host along with the key so the
120
+ * license server registers this instance against the license and
121
+ * it shows up in the instance list on all instances that share
122
+ * the license.
123
+ */
124
+ const instanceId = (existingConfig === null || existingConfig === void 0 ? void 0 : existingConfig.instanceId) || ObjectID.generate();
81
125
  const validationResponse = await API.post({
82
126
  url: EnterpriseLicenseValidationUrl,
83
127
  data: {
84
128
  licenseKey,
129
+ instanceId: instanceId.toString(),
130
+ host: Host,
85
131
  },
86
132
  });
87
133
  if (!validationResponse.isSuccess()) {
@@ -121,6 +167,9 @@ export default class GlobalConfigAPI extends BaseAPI {
121
167
  userCountUpdatedAt = parsedReportedAt;
122
168
  }
123
169
  }
170
+ const instances = Array.isArray(payload["instances"])
171
+ ? payload["instances"]
172
+ : [];
124
173
  const updatePayload = {
125
174
  enterpriseCompanyName: companyNameRaw || null,
126
175
  enterpriseLicenseKey: licenseKeyRaw || null,
@@ -129,18 +178,12 @@ export default class GlobalConfigAPI extends BaseAPI {
129
178
  enterpriseLicenseUserLimit: userLimit,
130
179
  enterpriseLicenseCurrentUserCount: currentUserCount,
131
180
  enterpriseLicenseUserCountUpdatedAt: userCountUpdatedAt,
181
+ enterpriseLicenseInstances: instances,
132
182
  };
133
- const globalConfigId = ObjectID.getZeroObjectID();
134
- const existingConfig = await GlobalConfigService.findOneById({
135
- id: globalConfigId,
136
- select: {
137
- _id: true,
138
- },
139
- props: {
140
- isRoot: true,
141
- ignoreHooks: true,
142
- },
143
- });
183
+ if (!(existingConfig === null || existingConfig === void 0 ? void 0 : existingConfig.instanceId)) {
184
+ // Installs that predate instance ids: persist the one we generated.
185
+ updatePayload.instanceId = instanceId;
186
+ }
144
187
  if (existingConfig) {
145
188
  await GlobalConfigService.updateOneById({
146
189
  id: globalConfigId,
@@ -176,6 +219,8 @@ export default class GlobalConfigAPI extends BaseAPI {
176
219
  newConfig.enterpriseLicenseUserCountUpdatedAt =
177
220
  userCountUpdatedAt;
178
221
  }
222
+ newConfig.enterpriseLicenseInstances = instances;
223
+ newConfig.instanceId = instanceId;
179
224
  await GlobalConfigService.create({
180
225
  data: newConfig,
181
226
  props: {
@@ -194,6 +239,8 @@ export default class GlobalConfigAPI extends BaseAPI {
194
239
  userCountUpdatedAt: userCountUpdatedAt
195
240
  ? userCountUpdatedAt.toISOString()
196
241
  : null,
242
+ instances: instances,
243
+ instanceId: instanceId.toString(),
197
244
  });
198
245
  }
199
246
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"GlobalConfigAPI.js","sourceRoot":"","sources":["../../../../Server/API/GlobalConfigAPI.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GlobalConfigAPI.js","sourceRoot":"","sources":["../../../../Server/API/GlobalConfigAPI.ts"],"names":[],"mappings":"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"}
@@ -1021,8 +1021,13 @@ export default class StatusPageAPI extends BaseAPI {
1021
1021
  next(err);
1022
1022
  }
1023
1023
  });
1024
- this.router.post(`${(_x = new this.entityType()
1025
- .getCrudApiPath()) === null || _x === void 0 ? void 0 : _x.toString()}/overview/:statusPageIdOrDomain`, UserMiddleware.getUserMiddleware, async (req, res, next) => {
1024
+ /*
1025
+ * Shared handler for the overview endpoint. Registered for both POST
1026
+ * (used by the status page SPA) and GET (machine-readable access for
1027
+ * crawlers / AI agents) so the authentication and authorization path
1028
+ * can never drift between the two methods. It does not read req.body.
1029
+ */
1030
+ const overviewHandler = async (req, res, next) => {
1026
1031
  var _a;
1027
1032
  try {
1028
1033
  const statusPageId = await resolveStatusPageIdOrThrow(req.params["statusPageIdOrDomain"]);
@@ -1489,26 +1494,25 @@ export default class StatusPageAPI extends BaseAPI {
1489
1494
  }
1490
1495
  let scheduledMaintenanceEvents = [];
1491
1496
  if (statusPage.showScheduledMaintenanceEventsOnStatusPage) {
1492
- scheduledMaintenanceEvents =
1493
- await ScheduledMaintenanceService.findBy({
1494
- query: {
1495
- currentScheduledMaintenanceState: {
1496
- isOngoingState: true,
1497
- },
1498
- statusPages: statusPageId,
1499
- projectId: statusPage.projectId,
1500
- isVisibleOnStatusPage: true,
1501
- },
1502
- select: scheduledEventsSelect,
1503
- sort: {
1504
- startsAt: SortOrder.Ascending,
1505
- },
1506
- skip: 0,
1507
- limit: LIMIT_PER_PROJECT,
1508
- props: {
1509
- isRoot: true,
1497
+ scheduledMaintenanceEvents = await ScheduledMaintenanceService.findBy({
1498
+ query: {
1499
+ currentScheduledMaintenanceState: {
1500
+ isOngoingState: true,
1510
1501
  },
1511
- });
1502
+ statusPages: statusPageId,
1503
+ projectId: statusPage.projectId,
1504
+ isVisibleOnStatusPage: true,
1505
+ },
1506
+ select: scheduledEventsSelect,
1507
+ sort: {
1508
+ startsAt: SortOrder.Ascending,
1509
+ },
1510
+ skip: 0,
1511
+ limit: LIMIT_PER_PROJECT,
1512
+ props: {
1513
+ isRoot: true,
1514
+ },
1515
+ });
1512
1516
  }
1513
1517
  let futureScheduledMaintenanceEvents = [];
1514
1518
  if (statusPage.showScheduledMaintenanceEventsOnStatusPage) {
@@ -1693,12 +1697,23 @@ export default class StatusPageAPI extends BaseAPI {
1693
1697
  monitorsInGroup: JSONFunctions.serialize(monitorsInGroup),
1694
1698
  timelineIncidents: BaseModel.toJSONArray(timelineIncidents, Incident),
1695
1699
  };
1700
+ // These can serve private-page data on a GET; never let shared caches store them.
1701
+ Response.setNoCacheHeaders(res);
1696
1702
  return Response.sendJsonObjectResponse(req, res, response);
1697
1703
  }
1698
1704
  catch (err) {
1699
1705
  next(err);
1700
1706
  }
1701
- });
1707
+ };
1708
+ const overviewApiPath = `${(_x = new this.entityType()
1709
+ .getCrudApiPath()) === null || _x === void 0 ? void 0 : _x.toString()}/overview/:statusPageIdOrDomain`;
1710
+ this.router.post(overviewApiPath, UserMiddleware.getUserMiddleware, overviewHandler);
1711
+ /*
1712
+ * GET variant of the overview endpoint. Same middleware and same handler
1713
+ * as the POST route above — private status pages are rejected for
1714
+ * unauthenticated callers exactly as they are on POST.
1715
+ */
1716
+ this.router.get(overviewApiPath, UserMiddleware.getUserMiddleware, overviewHandler);
1702
1717
  this.router.put(`${(_y = new this.entityType()
1703
1718
  .getCrudApiPath()) === null || _y === void 0 ? void 0 : _y.toString()}/update-subscription/:statusPageId/:subscriberId`, UserMiddleware.getUserMiddleware, async (req, res, next) => {
1704
1719
  try {
@@ -1739,39 +1754,67 @@ export default class StatusPageAPI extends BaseAPI {
1739
1754
  next(err);
1740
1755
  }
1741
1756
  });
1742
- this.router.post(`${(_2 = new this.entityType()
1743
- .getCrudApiPath()) === null || _2 === void 0 ? void 0 : _2.toString()}/incidents/:statusPageIdOrDomain`, UserMiddleware.getUserMiddleware, async (req, res, next) => {
1757
+ /*
1758
+ * Shared handler for the incidents list endpoint. Registered for both
1759
+ * POST and GET (same auth path). It does not read req.body.
1760
+ */
1761
+ const incidentsListHandler = async (req, res, next) => {
1744
1762
  try {
1745
1763
  const objectId = await resolveStatusPageIdOrThrow(req.params["statusPageIdOrDomain"]);
1746
1764
  const response = await this.getIncidents(objectId, null, req);
1765
+ // These can serve private-page data on a GET; never let shared caches store them.
1766
+ Response.setNoCacheHeaders(res);
1747
1767
  return Response.sendJsonObjectResponse(req, res, response);
1748
1768
  }
1749
1769
  catch (err) {
1750
1770
  next(err);
1751
1771
  }
1752
- });
1753
- this.router.post(`${(_3 = new this.entityType()
1754
- .getCrudApiPath()) === null || _3 === void 0 ? void 0 : _3.toString()}/scheduled-maintenance-events/:statusPageIdOrDomain`, UserMiddleware.getUserMiddleware, async (req, res, next) => {
1772
+ };
1773
+ const incidentsListApiPath = `${(_2 = new this.entityType()
1774
+ .getCrudApiPath()) === null || _2 === void 0 ? void 0 : _2.toString()}/incidents/:statusPageIdOrDomain`;
1775
+ this.router.post(incidentsListApiPath, UserMiddleware.getUserMiddleware, incidentsListHandler);
1776
+ this.router.get(incidentsListApiPath, UserMiddleware.getUserMiddleware, incidentsListHandler);
1777
+ /*
1778
+ * Shared handler for the scheduled maintenance events list endpoint.
1779
+ * Registered for both POST and GET (same auth path). It does not read
1780
+ * req.body.
1781
+ */
1782
+ const scheduledMaintenanceEventsListHandler = async (req, res, next) => {
1755
1783
  try {
1756
1784
  const objectId = await resolveStatusPageIdOrThrow(req.params["statusPageIdOrDomain"]);
1757
1785
  const response = await this.getScheduledMaintenanceEvents(objectId, null, req);
1786
+ // These can serve private-page data on a GET; never let shared caches store them.
1787
+ Response.setNoCacheHeaders(res);
1758
1788
  return Response.sendJsonObjectResponse(req, res, response);
1759
1789
  }
1760
1790
  catch (err) {
1761
1791
  next(err);
1762
1792
  }
1763
- });
1764
- this.router.post(`${(_4 = new this.entityType()
1765
- .getCrudApiPath()) === null || _4 === void 0 ? void 0 : _4.toString()}/announcements/:statusPageIdOrDomain`, UserMiddleware.getUserMiddleware, async (req, res, next) => {
1793
+ };
1794
+ const scheduledMaintenanceEventsListApiPath = `${(_3 = new this.entityType()
1795
+ .getCrudApiPath()) === null || _3 === void 0 ? void 0 : _3.toString()}/scheduled-maintenance-events/:statusPageIdOrDomain`;
1796
+ this.router.post(scheduledMaintenanceEventsListApiPath, UserMiddleware.getUserMiddleware, scheduledMaintenanceEventsListHandler);
1797
+ this.router.get(scheduledMaintenanceEventsListApiPath, UserMiddleware.getUserMiddleware, scheduledMaintenanceEventsListHandler);
1798
+ /*
1799
+ * Shared handler for the announcements list endpoint. Registered for
1800
+ * both POST and GET (same auth path). It does not read req.body.
1801
+ */
1802
+ const announcementsListHandler = async (req, res, next) => {
1766
1803
  try {
1767
1804
  const objectId = await resolveStatusPageIdOrThrow(req.params["statusPageIdOrDomain"]);
1768
1805
  const response = await this.getAnnouncements(objectId, null, req);
1806
+ // These can serve private-page data on a GET; never let shared caches store them.
1807
+ Response.setNoCacheHeaders(res);
1769
1808
  return Response.sendJsonObjectResponse(req, res, response);
1770
1809
  }
1771
1810
  catch (err) {
1772
1811
  next(err);
1773
1812
  }
1774
- });
1813
+ };
1814
+ const announcementsListApiPath = `${(_4 = new this.entityType()
1815
+ .getCrudApiPath()) === null || _4 === void 0 ? void 0 : _4.toString()}/announcements/:statusPageIdOrDomain`;
1816
+ this.router.post(announcementsListApiPath, UserMiddleware.getUserMiddleware, announcementsListHandler);
1817
+ this.router.get(announcementsListApiPath, UserMiddleware.getUserMiddleware, announcementsListHandler);
1775
1818
  this.router.post(`${(_5 = new this.entityType()
1776
1819
  .getCrudApiPath()) === null || _5 === void 0 ? void 0 : _5.toString()}/incidents/:statusPageIdOrDomain/:incidentId`, UserMiddleware.getUserMiddleware, async (req, res, next) => {
1777
1820
  try {