UNPKG

@pulumiverse/scaleway

Version:

A Pulumi package for creating and managing Scaleway cloud resources.

154 lines 6.41 kB
import * as pulumi from "@pulumi/pulumi"; /** * Creates and manages Scaleway Budget Alert Notifications. * * A Budget Alert Notification defines how to notify recipients when a budget alert is triggered. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as scaleway from "@pulumiverse/scaleway"; * * const main = new scaleway.billing.Budget("main", { * organizationId: "11111111-1111-1111-1111-111111111111", * consumptionLimit: 10000, * enabled: true, * }); * const mainBudgetAlert = new scaleway.billing.BudgetAlert("main", { * budgetId: main.id, * threshold: 80, * }); * const email = new scaleway.billing.BudgetAlertNotification("email", { * budgetAlertId: mainBudgetAlert.id, * emailAddresses: [ * "alerts@example.com", * "billing@example.com", * ], * }); * const sms = new scaleway.billing.BudgetAlertNotification("sms", { * budgetAlertId: mainBudgetAlert.id, * smsPhoneNumbers: ["+33612345678"], * }); * const webhook = new scaleway.billing.BudgetAlertNotification("webhook", { * budgetAlertId: mainBudgetAlert.id, * webhookUrls: ["https://example.com/webhook"], * }); * ``` * * ## Import * * Budget Alert Notification can be imported using the notification ID. * * ```sh * $ pulumi import scaleway:billing/budgetAlertNotification:BudgetAlertNotification main 11111111-1111-1111-1111-111111111111 * ``` */ export declare class BudgetAlertNotification extends pulumi.CustomResource { /** * Get an existing BudgetAlertNotification resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: BudgetAlertNotificationState, opts?: pulumi.CustomResourceOptions): BudgetAlertNotification; /** * Returns true if the given object is an instance of BudgetAlertNotification. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is BudgetAlertNotification; /** * The ID of the budget alert to create notification for. */ readonly budgetAlertId: pulumi.Output<string>; /** * The date and time of budget alert notification creation */ readonly createdAt: pulumi.Output<string>; /** * List of email addresses to receive email notifications. Precisely one of sms_phone_numbers, email_addresses, or webhookUrls must be set. */ readonly emailAddresses: pulumi.Output<string[] | undefined>; /** * List of phone numbers to receive SMS notifications. Precisely one of sms_phone_numbers, email_addresses, or webhookUrls must be set. */ readonly smsPhoneNumbers: pulumi.Output<string[] | undefined>; /** * The type of notification (sms, email, or webhook) */ readonly type: pulumi.Output<string>; /** * The date and time when the budget alert notification was last updated */ readonly updatedAt: pulumi.Output<string>; /** * List of webhook URLs to receive webhook notifications. Precisely one of sms_phone_numbers, email_addresses, or webhookUrls must be set. */ readonly webhookUrls: pulumi.Output<string[] | undefined>; /** * Create a BudgetAlertNotification resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: BudgetAlertNotificationArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering BudgetAlertNotification resources. */ export interface BudgetAlertNotificationState { /** * The ID of the budget alert to create notification for. */ budgetAlertId?: pulumi.Input<string | undefined>; /** * The date and time of budget alert notification creation */ createdAt?: pulumi.Input<string | undefined>; /** * List of email addresses to receive email notifications. Precisely one of sms_phone_numbers, email_addresses, or webhookUrls must be set. */ emailAddresses?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * List of phone numbers to receive SMS notifications. Precisely one of sms_phone_numbers, email_addresses, or webhookUrls must be set. */ smsPhoneNumbers?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * The type of notification (sms, email, or webhook) */ type?: pulumi.Input<string | undefined>; /** * The date and time when the budget alert notification was last updated */ updatedAt?: pulumi.Input<string | undefined>; /** * List of webhook URLs to receive webhook notifications. Precisely one of sms_phone_numbers, email_addresses, or webhookUrls must be set. */ webhookUrls?: pulumi.Input<pulumi.Input<string>[] | undefined>; } /** * The set of arguments for constructing a BudgetAlertNotification resource. */ export interface BudgetAlertNotificationArgs { /** * The ID of the budget alert to create notification for. */ budgetAlertId: pulumi.Input<string>; /** * List of email addresses to receive email notifications. Precisely one of sms_phone_numbers, email_addresses, or webhookUrls must be set. */ emailAddresses?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * List of phone numbers to receive SMS notifications. Precisely one of sms_phone_numbers, email_addresses, or webhookUrls must be set. */ smsPhoneNumbers?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * List of webhook URLs to receive webhook notifications. Precisely one of sms_phone_numbers, email_addresses, or webhookUrls must be set. */ webhookUrls?: pulumi.Input<pulumi.Input<string>[] | undefined>; } //# sourceMappingURL=budgetAlertNotification.d.ts.map