cloudflare
Version:
The official TypeScript library for the Cloudflare API
85 lines • 3.39 kB
text/typescript
import { APIResource } from "../../../core/resource.mjs";
import { APIPromise } from "../../../core/api-promise.mjs";
import { RequestOptions } from "../../../internal/request-options.mjs";
export declare class BaseAlerting extends APIResource {
static readonly _key: readonly ['zones', 'ct', 'alerting'];
/**
* Create or update the Certificate Transparency alerting subscription for a zone.
* Enables or disables email notifications when certificates are issued for the
* zone's domains. The `enabled` field is required on every request and controls
* whether the subscription is active. The `emails` field is optional and, when
* provided, replaces the stored recipient list for the zone. When `emails` is
* omitted, the stored recipient list is preserved and only the enabled state is
* toggled. A maximum of 100 email addresses may be configured per zone. Requests
* that omit `enabled` are rejected with error code 1008. Subscribe and unsubscribe
* notification emails are only sent for recipients whose effective subscription
* state changes. Idempotent requests (no state change) send no notification email.
*
* @example
* ```ts
* const ctAlertingSubscription =
* await client.zones.ct.alerting.edit({
* zone_id: '023e105f4ecef8ad9ca31a8372d0c353',
* enabled: true,
* });
* ```
*/
edit(params: AlertingEditParams, options?: RequestOptions): APIPromise<CTAlertingSubscription>;
/**
* Retrieve the Certificate Transparency alerting subscription settings for a zone.
* Returns whether CT monitoring is enabled and the list of email addresses that
* receive alerts, if any have been configured.
*
* @example
* ```ts
* const ctAlertingSubscription =
* await client.zones.ct.alerting.get({
* zone_id: '023e105f4ecef8ad9ca31a8372d0c353',
* });
* ```
*/
get(params: AlertingGetParams, options?: RequestOptions): APIPromise<CTAlertingSubscription>;
}
export declare class Alerting extends BaseAlerting {
}
/**
* Certificate Transparency alerting subscription settings for a zone.
*/
export interface CTAlertingSubscription {
/**
* Whether CT alerting is enabled for the zone.
*/
enabled: boolean;
/**
* Email addresses that receive CT alert notifications for the zone. A maximum of
* 100 addresses may be configured. Each address must be a valid RFC 5322 email
* address and must not contain a comma.
*/
emails?: Array<string>;
}
export interface AlertingEditParams {
/**
* Path param: Identifier.
*/
zone_id: string;
/**
* Body param: Whether CT alerting is enabled for the zone.
*/
enabled: boolean;
/**
* Body param: Email addresses that receive CT alert notifications for the zone. A
* maximum of 100 addresses may be configured. Each address must be a valid RFC
* 5322 email address and must not contain a comma.
*/
emails?: Array<string>;
}
export interface AlertingGetParams {
/**
* Identifier.
*/
zone_id: string;
}
export declare namespace Alerting {
export { type CTAlertingSubscription as CTAlertingSubscription, type AlertingEditParams as AlertingEditParams, type AlertingGetParams as AlertingGetParams, };
}
//# sourceMappingURL=alerting.d.mts.map