@scaleway/sdk-cockpit 1.3.2 → 1.5.0

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.
@@ -489,6 +489,23 @@ class RegionalAPI extends sdkClient.API {
489
489
  },
490
490
  marshalling_gen.unmarshalAlertManager
491
491
  );
492
+ /**
493
+ * Get a detailed count of enabled rules in the specified Project. Includes preconfigured and custom alerting and recording rules.. Get a detailed count of enabled rules in the specified Project. Includes preconfigured and custom alerting and recording rules.
494
+ *
495
+ * @param request - The request {@link RegionalApiGetRulesCountRequest}
496
+ * @returns A Promise of GetRulesCountResponse
497
+ */
498
+ getRulesCount = (request = {}) => this.client.fetch(
499
+ {
500
+ method: "GET",
501
+ path: `/cockpit/v1/regions/${sdkClient.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/rules/count`,
502
+ urlParams: sdkClient.urlParams([
503
+ "project_id",
504
+ request.projectId ?? this.client.settings.defaultProjectId
505
+ ])
506
+ },
507
+ marshalling_gen.unmarshalGetRulesCountResponse
508
+ );
492
509
  /**
493
510
  * Create a contact point. Contact points are email addresses associated with the default receiver, that the Alert manager sends alerts to.
494
511
  The source of the alerts are data sources within the same Project and region as the Alert manager.
@@ -578,12 +595,12 @@ class RegionalAPI extends sdkClient.API {
578
595
  path: `/cockpit/v1/regions/${sdkClient.validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/alerts`,
579
596
  urlParams: sdkClient.urlParams(
580
597
  ["data_source_id", request.dataSourceId],
581
- ["is_enabled", request.isEnabled],
582
598
  ["is_preconfigured", request.isPreconfigured],
583
599
  [
584
600
  "project_id",
585
601
  request.projectId ?? this.client.settings.defaultProjectId
586
602
  ],
603
+ ["rule_status", request.ruleStatus],
587
604
  ["state", request.state]
588
605
  )
589
606
  },
@@ -1,6 +1,6 @@
1
- import { API as ParentAPI } from '@scaleway/sdk-client';
2
1
  import type { ApiLocality } from '@scaleway/sdk-client';
3
- import type { AlertManager, ContactPoint, DataSource, DisableAlertRulesResponse, EnableAlertRulesResponse, GetConfigResponse, GlobalApiCreateGrafanaUserRequest, GlobalApiDeleteGrafanaUserRequest, GlobalApiGetCurrentPlanRequest, GlobalApiGetGrafanaProductDashboardRequest, GlobalApiGetGrafanaRequest, GlobalApiListGrafanaProductDashboardsRequest, GlobalApiListGrafanaUsersRequest, GlobalApiListPlansRequest, GlobalApiResetGrafanaUserPasswordRequest, GlobalApiSelectPlanRequest, GlobalApiSyncGrafanaDataSourcesRequest, Grafana, GrafanaProductDashboard, GrafanaUser, ListAlertsResponse, ListContactPointsResponse, ListDataSourcesResponse, ListGrafanaProductDashboardsResponse, ListGrafanaUsersResponse, ListPlansResponse, ListTokensResponse, Plan, RegionalApiCreateContactPointRequest, RegionalApiCreateDataSourceRequest, RegionalApiCreateTokenRequest, RegionalApiDeleteContactPointRequest, RegionalApiDeleteDataSourceRequest, RegionalApiDeleteTokenRequest, RegionalApiDisableAlertManagerRequest, RegionalApiDisableAlertRulesRequest, RegionalApiDisableManagedAlertsRequest, RegionalApiEnableAlertManagerRequest, RegionalApiEnableAlertRulesRequest, RegionalApiEnableManagedAlertsRequest, RegionalApiGetAlertManagerRequest, RegionalApiGetConfigRequest, RegionalApiGetDataSourceRequest, RegionalApiGetTokenRequest, RegionalApiGetUsageOverviewRequest, RegionalApiListAlertsRequest, RegionalApiListContactPointsRequest, RegionalApiListDataSourcesRequest, RegionalApiListTokensRequest, RegionalApiTriggerTestAlertRequest, RegionalApiUpdateContactPointRequest, RegionalApiUpdateDataSourceRequest, Token, UsageOverview } from './types.gen';
2
+ import { API as ParentAPI } from '@scaleway/sdk-client';
3
+ import type { AlertManager, ContactPoint, DataSource, DisableAlertRulesResponse, EnableAlertRulesResponse, GetConfigResponse, GetRulesCountResponse, GlobalApiCreateGrafanaUserRequest, GlobalApiDeleteGrafanaUserRequest, GlobalApiGetCurrentPlanRequest, GlobalApiGetGrafanaProductDashboardRequest, GlobalApiGetGrafanaRequest, GlobalApiListGrafanaProductDashboardsRequest, GlobalApiListGrafanaUsersRequest, GlobalApiListPlansRequest, GlobalApiResetGrafanaUserPasswordRequest, GlobalApiSelectPlanRequest, GlobalApiSyncGrafanaDataSourcesRequest, Grafana, GrafanaProductDashboard, GrafanaUser, ListAlertsResponse, ListContactPointsResponse, ListDataSourcesResponse, ListGrafanaProductDashboardsResponse, ListGrafanaUsersResponse, ListPlansResponse, ListTokensResponse, Plan, RegionalApiCreateContactPointRequest, RegionalApiCreateDataSourceRequest, RegionalApiCreateTokenRequest, RegionalApiDeleteContactPointRequest, RegionalApiDeleteDataSourceRequest, RegionalApiDeleteTokenRequest, RegionalApiDisableAlertManagerRequest, RegionalApiDisableAlertRulesRequest, RegionalApiDisableManagedAlertsRequest, RegionalApiEnableAlertManagerRequest, RegionalApiEnableAlertRulesRequest, RegionalApiEnableManagedAlertsRequest, RegionalApiGetAlertManagerRequest, RegionalApiGetConfigRequest, RegionalApiGetDataSourceRequest, RegionalApiGetRulesCountRequest, RegionalApiGetTokenRequest, RegionalApiGetUsageOverviewRequest, RegionalApiListAlertsRequest, RegionalApiListContactPointsRequest, RegionalApiListDataSourcesRequest, RegionalApiListTokensRequest, RegionalApiTriggerTestAlertRequest, RegionalApiUpdateContactPointRequest, RegionalApiUpdateDataSourceRequest, Token, UsageOverview } from './types.gen';
4
4
  /**
5
5
  * Cockpit Global API.
6
6
 
@@ -223,6 +223,13 @@ export declare class RegionalAPI extends ParentAPI {
223
223
  * @returns A Promise of AlertManager
224
224
  */
225
225
  disableAlertManager: (request?: Readonly<RegionalApiDisableAlertManagerRequest>) => Promise<AlertManager>;
226
+ /**
227
+ * Get a detailed count of enabled rules in the specified Project. Includes preconfigured and custom alerting and recording rules.. Get a detailed count of enabled rules in the specified Project. Includes preconfigured and custom alerting and recording rules.
228
+ *
229
+ * @param request - The request {@link RegionalApiGetRulesCountRequest}
230
+ * @returns A Promise of GetRulesCountResponse
231
+ */
232
+ getRulesCount: (request?: Readonly<RegionalApiGetRulesCountRequest>) => Promise<GetRulesCountResponse>;
226
233
  /**
227
234
  * Create a contact point. Contact points are email addresses associated with the default receiver, that the Alert manager sends alerts to.
228
235
  The source of the alerts are data sources within the same Project and region as the Alert manager.
@@ -1,5 +1,5 @@
1
1
  import { API, toApiLocality, validatePathParam, urlParams, enrichForPagination } from "@scaleway/sdk-client";
2
- import { unmarshalGetConfigResponse, marshalRegionalApiCreateDataSourceRequest, unmarshalDataSource, unmarshalListDataSourcesResponse, marshalRegionalApiUpdateDataSourceRequest, unmarshalUsageOverview, marshalRegionalApiCreateTokenRequest, unmarshalToken, unmarshalListTokensResponse, unmarshalAlertManager, marshalRegionalApiEnableAlertManagerRequest, marshalRegionalApiDisableAlertManagerRequest, marshalRegionalApiCreateContactPointRequest, unmarshalContactPoint, unmarshalListContactPointsResponse, marshalRegionalApiUpdateContactPointRequest, marshalRegionalApiDeleteContactPointRequest, unmarshalListAlertsResponse, marshalRegionalApiEnableManagedAlertsRequest, marshalRegionalApiDisableManagedAlertsRequest, marshalRegionalApiEnableAlertRulesRequest, unmarshalEnableAlertRulesResponse, marshalRegionalApiDisableAlertRulesRequest, unmarshalDisableAlertRulesResponse, marshalRegionalApiTriggerTestAlertRequest, unmarshalGrafana, marshalGlobalApiSyncGrafanaDataSourcesRequest, marshalGlobalApiCreateGrafanaUserRequest, unmarshalGrafanaUser, unmarshalListGrafanaUsersResponse, marshalGlobalApiResetGrafanaUserPasswordRequest, unmarshalListGrafanaProductDashboardsResponse, unmarshalGrafanaProductDashboard, unmarshalListPlansResponse, marshalGlobalApiSelectPlanRequest, unmarshalPlan } from "./marshalling.gen.js";
2
+ import { unmarshalGetConfigResponse, marshalRegionalApiCreateDataSourceRequest, unmarshalDataSource, unmarshalListDataSourcesResponse, marshalRegionalApiUpdateDataSourceRequest, unmarshalUsageOverview, marshalRegionalApiCreateTokenRequest, unmarshalToken, unmarshalListTokensResponse, unmarshalAlertManager, marshalRegionalApiEnableAlertManagerRequest, marshalRegionalApiDisableAlertManagerRequest, unmarshalGetRulesCountResponse, marshalRegionalApiCreateContactPointRequest, unmarshalContactPoint, unmarshalListContactPointsResponse, marshalRegionalApiUpdateContactPointRequest, marshalRegionalApiDeleteContactPointRequest, unmarshalListAlertsResponse, marshalRegionalApiEnableManagedAlertsRequest, marshalRegionalApiDisableManagedAlertsRequest, marshalRegionalApiEnableAlertRulesRequest, unmarshalEnableAlertRulesResponse, marshalRegionalApiDisableAlertRulesRequest, unmarshalDisableAlertRulesResponse, marshalRegionalApiTriggerTestAlertRequest, unmarshalGrafana, marshalGlobalApiSyncGrafanaDataSourcesRequest, marshalGlobalApiCreateGrafanaUserRequest, unmarshalGrafanaUser, unmarshalListGrafanaUsersResponse, marshalGlobalApiResetGrafanaUserPasswordRequest, unmarshalListGrafanaProductDashboardsResponse, unmarshalGrafanaProductDashboard, unmarshalListPlansResponse, marshalGlobalApiSelectPlanRequest, unmarshalPlan } from "./marshalling.gen.js";
3
3
  const jsonContentHeaders = {
4
4
  "Content-Type": "application/json; charset=utf-8"
5
5
  };
@@ -487,6 +487,23 @@ class RegionalAPI extends API {
487
487
  },
488
488
  unmarshalAlertManager
489
489
  );
490
+ /**
491
+ * Get a detailed count of enabled rules in the specified Project. Includes preconfigured and custom alerting and recording rules.. Get a detailed count of enabled rules in the specified Project. Includes preconfigured and custom alerting and recording rules.
492
+ *
493
+ * @param request - The request {@link RegionalApiGetRulesCountRequest}
494
+ * @returns A Promise of GetRulesCountResponse
495
+ */
496
+ getRulesCount = (request = {}) => this.client.fetch(
497
+ {
498
+ method: "GET",
499
+ path: `/cockpit/v1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/rules/count`,
500
+ urlParams: urlParams([
501
+ "project_id",
502
+ request.projectId ?? this.client.settings.defaultProjectId
503
+ ])
504
+ },
505
+ unmarshalGetRulesCountResponse
506
+ );
490
507
  /**
491
508
  * Create a contact point. Contact points are email addresses associated with the default receiver, that the Alert manager sends alerts to.
492
509
  The source of the alerts are data sources within the same Project and region as the Alert manager.
@@ -576,12 +593,12 @@ class RegionalAPI extends API {
576
593
  path: `/cockpit/v1/regions/${validatePathParam("region", request.region ?? this.client.settings.defaultRegion)}/alerts`,
577
594
  urlParams: urlParams(
578
595
  ["data_source_id", request.dataSourceId],
579
- ["is_enabled", request.isEnabled],
580
596
  ["is_preconfigured", request.isPreconfigured],
581
597
  [
582
598
  "project_id",
583
599
  request.projectId ?? this.client.settings.defaultProjectId
584
600
  ],
601
+ ["rule_status", request.ruleStatus],
585
602
  ["state", request.state]
586
603
  )
587
604
  },
@@ -28,6 +28,7 @@ exports.unmarshalDataSource = marshalling_gen.unmarshalDataSource;
28
28
  exports.unmarshalDisableAlertRulesResponse = marshalling_gen.unmarshalDisableAlertRulesResponse;
29
29
  exports.unmarshalEnableAlertRulesResponse = marshalling_gen.unmarshalEnableAlertRulesResponse;
30
30
  exports.unmarshalGetConfigResponse = marshalling_gen.unmarshalGetConfigResponse;
31
+ exports.unmarshalGetRulesCountResponse = marshalling_gen.unmarshalGetRulesCountResponse;
31
32
  exports.unmarshalGrafana = marshalling_gen.unmarshalGrafana;
32
33
  exports.unmarshalGrafanaProductDashboard = marshalling_gen.unmarshalGrafanaProductDashboard;
33
34
  exports.unmarshalGrafanaUser = marshalling_gen.unmarshalGrafanaUser;
@@ -1,4 +1,4 @@
1
1
  export { GlobalAPI, RegionalAPI, } from './api.gen';
2
2
  export * from './marshalling.gen';
3
- export type { Alert, AlertManager, AlertState, ContactPoint, ContactPointEmail, DataSource, DataSourceOrigin, DataSourceType, DisableAlertRulesResponse, EnableAlertRulesResponse, GetConfigResponse, GetConfigResponseRetention, GlobalApiCreateGrafanaUserRequest, GlobalApiDeleteGrafanaUserRequest, GlobalApiGetCurrentPlanRequest, GlobalApiGetGrafanaProductDashboardRequest, GlobalApiGetGrafanaRequest, GlobalApiListGrafanaProductDashboardsRequest, GlobalApiListGrafanaUsersRequest, GlobalApiListPlansRequest, GlobalApiResetGrafanaUserPasswordRequest, GlobalApiSelectPlanRequest, GlobalApiSyncGrafanaDataSourcesRequest, Grafana, GrafanaProductDashboard, GrafanaUser, GrafanaUserRole, ListAlertsResponse, ListContactPointsResponse, ListDataSourcesRequestOrderBy, ListDataSourcesResponse, ListGrafanaProductDashboardsResponse, ListGrafanaUsersRequestOrderBy, ListGrafanaUsersResponse, ListPlansRequestOrderBy, ListPlansResponse, ListTokensRequestOrderBy, ListTokensResponse, Plan, PlanName, PreconfiguredAlertData, RegionalApiCreateContactPointRequest, RegionalApiCreateDataSourceRequest, RegionalApiCreateTokenRequest, RegionalApiDeleteContactPointRequest, RegionalApiDeleteDataSourceRequest, RegionalApiDeleteTokenRequest, RegionalApiDisableAlertManagerRequest, RegionalApiDisableAlertRulesRequest, RegionalApiDisableManagedAlertsRequest, RegionalApiEnableAlertManagerRequest, RegionalApiEnableAlertRulesRequest, RegionalApiEnableManagedAlertsRequest, RegionalApiGetAlertManagerRequest, RegionalApiGetConfigRequest, RegionalApiGetDataSourceRequest, RegionalApiGetTokenRequest, RegionalApiGetUsageOverviewRequest, RegionalApiListAlertsRequest, RegionalApiListContactPointsRequest, RegionalApiListDataSourcesRequest, RegionalApiListTokensRequest, RegionalApiTriggerTestAlertRequest, RegionalApiUpdateContactPointRequest, RegionalApiUpdateDataSourceRequest, Token, TokenScope, Usage, UsageOverview, UsageUnit, } from './types.gen';
3
+ export type { Alert, AlertManager, AlertState, AlertStatus, ContactPoint, ContactPointEmail, DataSource, DataSourceOrigin, DataSourceType, DisableAlertRulesResponse, EnableAlertRulesResponse, GetConfigResponse, GetConfigResponseRetention, GetRulesCountResponse, GlobalApiCreateGrafanaUserRequest, GlobalApiDeleteGrafanaUserRequest, GlobalApiGetCurrentPlanRequest, GlobalApiGetGrafanaProductDashboardRequest, GlobalApiGetGrafanaRequest, GlobalApiListGrafanaProductDashboardsRequest, GlobalApiListGrafanaUsersRequest, GlobalApiListPlansRequest, GlobalApiResetGrafanaUserPasswordRequest, GlobalApiSelectPlanRequest, GlobalApiSyncGrafanaDataSourcesRequest, Grafana, GrafanaProductDashboard, GrafanaUser, GrafanaUserRole, ListAlertsResponse, ListContactPointsResponse, ListDataSourcesRequestOrderBy, ListDataSourcesResponse, ListGrafanaProductDashboardsResponse, ListGrafanaUsersRequestOrderBy, ListGrafanaUsersResponse, ListPlansRequestOrderBy, ListPlansResponse, ListTokensRequestOrderBy, ListTokensResponse, Plan, PlanName, PreconfiguredAlertData, RegionalApiCreateContactPointRequest, RegionalApiCreateDataSourceRequest, RegionalApiCreateTokenRequest, RegionalApiDeleteContactPointRequest, RegionalApiDeleteDataSourceRequest, RegionalApiDeleteTokenRequest, RegionalApiDisableAlertManagerRequest, RegionalApiDisableAlertRulesRequest, RegionalApiDisableManagedAlertsRequest, RegionalApiEnableAlertManagerRequest, RegionalApiEnableAlertRulesRequest, RegionalApiEnableManagedAlertsRequest, RegionalApiGetAlertManagerRequest, RegionalApiGetConfigRequest, RegionalApiGetDataSourceRequest, RegionalApiGetRulesCountRequest, RegionalApiGetTokenRequest, RegionalApiGetUsageOverviewRequest, RegionalApiListAlertsRequest, RegionalApiListContactPointsRequest, RegionalApiListDataSourcesRequest, RegionalApiListTokensRequest, RegionalApiTriggerTestAlertRequest, RegionalApiUpdateContactPointRequest, RegionalApiUpdateDataSourceRequest, RulesCount, Token, TokenScope, Usage, UsageOverview, UsageUnit, } from './types.gen';
4
4
  export * as ValidationRules from './validation-rules.gen';
@@ -1,5 +1,5 @@
1
1
  import { GlobalAPI, RegionalAPI } from "./api.gen.js";
2
- import { marshalGlobalApiCreateGrafanaUserRequest, marshalGlobalApiResetGrafanaUserPasswordRequest, marshalGlobalApiSelectPlanRequest, marshalGlobalApiSyncGrafanaDataSourcesRequest, marshalRegionalApiCreateContactPointRequest, marshalRegionalApiCreateDataSourceRequest, marshalRegionalApiCreateTokenRequest, marshalRegionalApiDeleteContactPointRequest, marshalRegionalApiDisableAlertManagerRequest, marshalRegionalApiDisableAlertRulesRequest, marshalRegionalApiDisableManagedAlertsRequest, marshalRegionalApiEnableAlertManagerRequest, marshalRegionalApiEnableAlertRulesRequest, marshalRegionalApiEnableManagedAlertsRequest, marshalRegionalApiTriggerTestAlertRequest, marshalRegionalApiUpdateContactPointRequest, marshalRegionalApiUpdateDataSourceRequest, unmarshalAlertManager, unmarshalContactPoint, unmarshalDataSource, unmarshalDisableAlertRulesResponse, unmarshalEnableAlertRulesResponse, unmarshalGetConfigResponse, unmarshalGrafana, unmarshalGrafanaProductDashboard, unmarshalGrafanaUser, unmarshalListAlertsResponse, unmarshalListContactPointsResponse, unmarshalListDataSourcesResponse, unmarshalListGrafanaProductDashboardsResponse, unmarshalListGrafanaUsersResponse, unmarshalListPlansResponse, unmarshalListTokensResponse, unmarshalPlan, unmarshalToken, unmarshalUsageOverview } from "./marshalling.gen.js";
2
+ import { marshalGlobalApiCreateGrafanaUserRequest, marshalGlobalApiResetGrafanaUserPasswordRequest, marshalGlobalApiSelectPlanRequest, marshalGlobalApiSyncGrafanaDataSourcesRequest, marshalRegionalApiCreateContactPointRequest, marshalRegionalApiCreateDataSourceRequest, marshalRegionalApiCreateTokenRequest, marshalRegionalApiDeleteContactPointRequest, marshalRegionalApiDisableAlertManagerRequest, marshalRegionalApiDisableAlertRulesRequest, marshalRegionalApiDisableManagedAlertsRequest, marshalRegionalApiEnableAlertManagerRequest, marshalRegionalApiEnableAlertRulesRequest, marshalRegionalApiEnableManagedAlertsRequest, marshalRegionalApiTriggerTestAlertRequest, marshalRegionalApiUpdateContactPointRequest, marshalRegionalApiUpdateDataSourceRequest, unmarshalAlertManager, unmarshalContactPoint, unmarshalDataSource, unmarshalDisableAlertRulesResponse, unmarshalEnableAlertRulesResponse, unmarshalGetConfigResponse, unmarshalGetRulesCountResponse, unmarshalGrafana, unmarshalGrafanaProductDashboard, unmarshalGrafanaUser, unmarshalListAlertsResponse, unmarshalListContactPointsResponse, unmarshalListDataSourcesResponse, unmarshalListGrafanaProductDashboardsResponse, unmarshalListGrafanaUsersResponse, unmarshalListPlansResponse, unmarshalListTokensResponse, unmarshalPlan, unmarshalToken, unmarshalUsageOverview } from "./marshalling.gen.js";
3
3
  import * as validationRules_gen from "./validation-rules.gen.js";
4
4
  export {
5
5
  GlobalAPI,
@@ -28,6 +28,7 @@ export {
28
28
  unmarshalDisableAlertRulesResponse,
29
29
  unmarshalEnableAlertRulesResponse,
30
30
  unmarshalGetConfigResponse,
31
+ unmarshalGetRulesCountResponse,
31
32
  unmarshalGrafana,
32
33
  unmarshalGrafanaProductDashboard,
33
34
  unmarshalGrafanaUser,
@@ -163,6 +163,33 @@ const unmarshalGetConfigResponse = (data) => {
163
163
  productMetricsRetention: data.product_metrics_retention ? unmarshalGetConfigResponseRetention(data.product_metrics_retention) : void 0
164
164
  };
165
165
  };
166
+ const unmarshalRulesCount = (data) => {
167
+ if (!sdkClient.isJSONObject(data)) {
168
+ throw new TypeError(
169
+ `Unmarshalling the type 'RulesCount' failed as data isn't a dictionary.`
170
+ );
171
+ }
172
+ return {
173
+ dataSourceId: data.data_source_id,
174
+ dataSourceName: data.data_source_name,
175
+ rulesCount: data.rules_count
176
+ };
177
+ };
178
+ const unmarshalGetRulesCountResponse = (data) => {
179
+ if (!sdkClient.isJSONObject(data)) {
180
+ throw new TypeError(
181
+ `Unmarshalling the type 'GetRulesCountResponse' failed as data isn't a dictionary.`
182
+ );
183
+ }
184
+ return {
185
+ customRulesCount: data.custom_rules_count,
186
+ preconfiguredRulesCount: data.preconfigured_rules_count,
187
+ rulesCountByDatasource: sdkClient.unmarshalArrayOfObject(
188
+ data.rules_count_by_datasource,
189
+ unmarshalRulesCount
190
+ )
191
+ };
192
+ };
166
193
  const unmarshalGrafana = (data) => {
167
194
  if (!sdkClient.isJSONObject(data)) {
168
195
  throw new TypeError(
@@ -197,12 +224,12 @@ const unmarshalAlert = (data) => {
197
224
  annotations: data.annotations,
198
225
  dataSourceId: data.data_source_id,
199
226
  duration: data.duration,
200
- enabled: data.enabled,
201
227
  name: data.name,
202
228
  preconfigured: data.preconfigured,
203
229
  preconfiguredData: data.preconfigured_data ? unmarshalPreconfiguredAlertData(data.preconfigured_data) : void 0,
204
230
  region: data.region,
205
231
  rule: data.rule,
232
+ ruleStatus: data.rule_status,
206
233
  state: data.state ? data.state : void 0
207
234
  };
208
235
  };
@@ -433,6 +460,7 @@ exports.unmarshalDataSource = unmarshalDataSource;
433
460
  exports.unmarshalDisableAlertRulesResponse = unmarshalDisableAlertRulesResponse;
434
461
  exports.unmarshalEnableAlertRulesResponse = unmarshalEnableAlertRulesResponse;
435
462
  exports.unmarshalGetConfigResponse = unmarshalGetConfigResponse;
463
+ exports.unmarshalGetRulesCountResponse = unmarshalGetRulesCountResponse;
436
464
  exports.unmarshalGrafana = unmarshalGrafana;
437
465
  exports.unmarshalGrafanaProductDashboard = unmarshalGrafanaProductDashboard;
438
466
  exports.unmarshalGrafanaUser = unmarshalGrafanaUser;
@@ -1,5 +1,5 @@
1
1
  import type { DefaultValues } from '@scaleway/sdk-client';
2
- import type { AlertManager, ContactPoint, DataSource, DisableAlertRulesResponse, EnableAlertRulesResponse, GetConfigResponse, GlobalApiCreateGrafanaUserRequest, GlobalApiResetGrafanaUserPasswordRequest, GlobalApiSelectPlanRequest, GlobalApiSyncGrafanaDataSourcesRequest, Grafana, GrafanaProductDashboard, GrafanaUser, ListAlertsResponse, ListContactPointsResponse, ListDataSourcesResponse, ListGrafanaProductDashboardsResponse, ListGrafanaUsersResponse, ListPlansResponse, ListTokensResponse, Plan, RegionalApiCreateContactPointRequest, RegionalApiCreateDataSourceRequest, RegionalApiCreateTokenRequest, RegionalApiDeleteContactPointRequest, RegionalApiDisableAlertManagerRequest, RegionalApiDisableAlertRulesRequest, RegionalApiDisableManagedAlertsRequest, RegionalApiEnableAlertManagerRequest, RegionalApiEnableAlertRulesRequest, RegionalApiEnableManagedAlertsRequest, RegionalApiTriggerTestAlertRequest, RegionalApiUpdateContactPointRequest, RegionalApiUpdateDataSourceRequest, Token, UsageOverview } from './types.gen';
2
+ import type { AlertManager, ContactPoint, DataSource, DisableAlertRulesResponse, EnableAlertRulesResponse, GetConfigResponse, GetRulesCountResponse, GlobalApiCreateGrafanaUserRequest, GlobalApiResetGrafanaUserPasswordRequest, GlobalApiSelectPlanRequest, GlobalApiSyncGrafanaDataSourcesRequest, Grafana, GrafanaProductDashboard, GrafanaUser, ListAlertsResponse, ListContactPointsResponse, ListDataSourcesResponse, ListGrafanaProductDashboardsResponse, ListGrafanaUsersResponse, ListPlansResponse, ListTokensResponse, Plan, RegionalApiCreateContactPointRequest, RegionalApiCreateDataSourceRequest, RegionalApiCreateTokenRequest, RegionalApiDeleteContactPointRequest, RegionalApiDisableAlertManagerRequest, RegionalApiDisableAlertRulesRequest, RegionalApiDisableManagedAlertsRequest, RegionalApiEnableAlertManagerRequest, RegionalApiEnableAlertRulesRequest, RegionalApiEnableManagedAlertsRequest, RegionalApiTriggerTestAlertRequest, RegionalApiUpdateContactPointRequest, RegionalApiUpdateDataSourceRequest, Token, UsageOverview } from './types.gen';
3
3
  export declare const unmarshalContactPoint: (data: unknown) => ContactPoint;
4
4
  export declare const unmarshalDataSource: (data: unknown) => DataSource;
5
5
  export declare const unmarshalGrafanaProductDashboard: (data: unknown) => GrafanaProductDashboard;
@@ -10,6 +10,7 @@ export declare const unmarshalAlertManager: (data: unknown) => AlertManager;
10
10
  export declare const unmarshalDisableAlertRulesResponse: (data: unknown) => DisableAlertRulesResponse;
11
11
  export declare const unmarshalEnableAlertRulesResponse: (data: unknown) => EnableAlertRulesResponse;
12
12
  export declare const unmarshalGetConfigResponse: (data: unknown) => GetConfigResponse;
13
+ export declare const unmarshalGetRulesCountResponse: (data: unknown) => GetRulesCountResponse;
13
14
  export declare const unmarshalGrafana: (data: unknown) => Grafana;
14
15
  export declare const unmarshalListAlertsResponse: (data: unknown) => ListAlertsResponse;
15
16
  export declare const unmarshalListContactPointsResponse: (data: unknown) => ListContactPointsResponse;
@@ -161,6 +161,33 @@ const unmarshalGetConfigResponse = (data) => {
161
161
  productMetricsRetention: data.product_metrics_retention ? unmarshalGetConfigResponseRetention(data.product_metrics_retention) : void 0
162
162
  };
163
163
  };
164
+ const unmarshalRulesCount = (data) => {
165
+ if (!isJSONObject(data)) {
166
+ throw new TypeError(
167
+ `Unmarshalling the type 'RulesCount' failed as data isn't a dictionary.`
168
+ );
169
+ }
170
+ return {
171
+ dataSourceId: data.data_source_id,
172
+ dataSourceName: data.data_source_name,
173
+ rulesCount: data.rules_count
174
+ };
175
+ };
176
+ const unmarshalGetRulesCountResponse = (data) => {
177
+ if (!isJSONObject(data)) {
178
+ throw new TypeError(
179
+ `Unmarshalling the type 'GetRulesCountResponse' failed as data isn't a dictionary.`
180
+ );
181
+ }
182
+ return {
183
+ customRulesCount: data.custom_rules_count,
184
+ preconfiguredRulesCount: data.preconfigured_rules_count,
185
+ rulesCountByDatasource: unmarshalArrayOfObject(
186
+ data.rules_count_by_datasource,
187
+ unmarshalRulesCount
188
+ )
189
+ };
190
+ };
164
191
  const unmarshalGrafana = (data) => {
165
192
  if (!isJSONObject(data)) {
166
193
  throw new TypeError(
@@ -195,12 +222,12 @@ const unmarshalAlert = (data) => {
195
222
  annotations: data.annotations,
196
223
  dataSourceId: data.data_source_id,
197
224
  duration: data.duration,
198
- enabled: data.enabled,
199
225
  name: data.name,
200
226
  preconfigured: data.preconfigured,
201
227
  preconfiguredData: data.preconfigured_data ? unmarshalPreconfiguredAlertData(data.preconfigured_data) : void 0,
202
228
  region: data.region,
203
229
  rule: data.rule,
230
+ ruleStatus: data.rule_status,
204
231
  state: data.state ? data.state : void 0
205
232
  };
206
233
  };
@@ -432,6 +459,7 @@ export {
432
459
  unmarshalDisableAlertRulesResponse,
433
460
  unmarshalEnableAlertRulesResponse,
434
461
  unmarshalGetConfigResponse,
462
+ unmarshalGetRulesCountResponse,
435
463
  unmarshalGrafana,
436
464
  unmarshalGrafanaProductDashboard,
437
465
  unmarshalGrafanaUser,
@@ -1,5 +1,6 @@
1
1
  import type { Region as ScwRegion } from '@scaleway/sdk-client';
2
2
  export type AlertState = 'unknown_state' | 'inactive' | 'pending' | 'firing';
3
+ export type AlertStatus = 'unknown_status' | 'enabled' | 'disabled' | 'enabling' | 'disabling';
3
4
  export type DataSourceOrigin = 'unknown_origin' | 'scaleway' | 'external' | 'custom';
4
5
  export type DataSourceType = 'unknown_type' | 'metrics' | 'logs' | 'traces';
5
6
  export type GrafanaUserRole = 'unknown_role' | 'editor' | 'viewer';
@@ -43,6 +44,20 @@ export interface GetConfigResponseRetention {
43
44
  maxDays: number;
44
45
  defaultDays: number;
45
46
  }
47
+ export interface RulesCount {
48
+ /**
49
+ * ID of the data source.
50
+ */
51
+ dataSourceId: string;
52
+ /**
53
+ * Name of the data source.
54
+ */
55
+ dataSourceName: string;
56
+ /**
57
+ * Total count of rules associated with this data source.
58
+ */
59
+ rulesCount: number;
60
+ }
46
61
  /**
47
62
  * Structure representing an alert.
48
63
  */
@@ -68,9 +83,9 @@ export interface Alert {
68
83
  */
69
84
  duration: string;
70
85
  /**
71
- * Indicates if the alert is enabled or disabled. Only preconfigured alerts can be disabled.
86
+ * Indicates if the alert is enabled, enabling, disabled or disabling. Preconfigured alerts can have any of these values, whereas custom alerts can only have the status "enabled".
72
87
  */
73
- enabled: boolean;
88
+ ruleStatus: AlertStatus;
74
89
  /**
75
90
  * Current state of the alert. Possible states are `inactive`, `pending`, and `firing`.
76
91
  */
@@ -377,6 +392,20 @@ export interface GetConfigResponse {
377
392
  */
378
393
  productLogsRetention?: GetConfigResponseRetention;
379
394
  }
395
+ export interface GetRulesCountResponse {
396
+ /**
397
+ * Total count of rules grouped by data source.
398
+ */
399
+ rulesCountByDatasource: RulesCount[];
400
+ /**
401
+ * Total count of preconfigured rules.
402
+ */
403
+ preconfiguredRulesCount: number;
404
+ /**
405
+ * Total count of custom rules.
406
+ */
407
+ customRulesCount: number;
408
+ }
380
409
  /**
381
410
  * Create a Grafana user.
382
411
  */
@@ -866,6 +895,16 @@ export type RegionalApiGetDataSourceRequest = {
866
895
  */
867
896
  dataSourceId: string;
868
897
  };
898
+ export type RegionalApiGetRulesCountRequest = {
899
+ /**
900
+ * Region to target. If none is passed will use default region from the config.
901
+ */
902
+ region?: ScwRegion;
903
+ /**
904
+ * ID of the Project to retrieve the rule count for.
905
+ */
906
+ projectId?: string;
907
+ };
869
908
  /**
870
909
  * Get a token.
871
910
  */
@@ -900,9 +939,9 @@ export type RegionalApiListAlertsRequest = {
900
939
  */
901
940
  projectId?: string;
902
941
  /**
903
- * True returns only enabled alerts. False returns only disabled alerts. If omitted, no alert filtering is applied. Other filters may still apply.
942
+ * Returns only alerts with the given activation status. If omitted, no alert filtering is applied. Other filters may still apply.
904
943
  */
905
- isEnabled?: boolean;
944
+ ruleStatus?: AlertStatus;
906
945
  /**
907
946
  * True returns only preconfigured alerts. False returns only custom alerts. If omitted, no filtering is applied on alert types. Other filters may still apply.
908
947
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scaleway/sdk-cockpit",
3
- "version": "1.3.2",
3
+ "version": "1.5.0",
4
4
  "description": "Scaleway SDK cockpit",
5
5
  "license": "Apache-2.0",
6
6
  "files": [
@@ -26,17 +26,17 @@
26
26
  "directory": "packages_generated/cockpit"
27
27
  },
28
28
  "engines": {
29
- "node": ">=20.19.1"
29
+ "node": ">=20.19.4"
30
30
  },
31
31
  "dependencies": {
32
- "@scaleway/random-name": "5.1.1",
33
- "@scaleway/sdk-std": "1.0.5"
32
+ "@scaleway/random-name": "5.1.2",
33
+ "@scaleway/sdk-std": "1.0.6"
34
34
  },
35
35
  "peerDependencies": {
36
- "@scaleway/sdk-client": "^1.3.0"
36
+ "@scaleway/sdk-client": "^1.3.1"
37
37
  },
38
38
  "devDependencies": {
39
- "@scaleway/sdk-client": "^1.3.0"
39
+ "@scaleway/sdk-client": "^1.3.1"
40
40
  },
41
41
  "scripts": {
42
42
  "package:check": "pnpm publint",