import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../../types/input"; import * as outputs from "../../types/output"; import * as enums from "../../types/enums"; /** * Create a new case and associate it with a parent. It must have the following fields set: `display_name`, `description`, `classification`, and `priority`. If you're just testing the API and don't want to route your case to an agent, set `testCase=true`. EXAMPLES: cURL: ``` shell parent="projects/some-project" curl \ --request POST \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ --header 'Content-Type: application/json' \ --data '{ "display_name": "Test case created by me.", "description": "a random test case, feel free to close", "classification": { "id": "100IK2AKCLHMGRJ9CDGMOCGP8DM6UTB4BT262T31BT1M2T31DHNMENPO6KS36CPJ786L2TBFEHGN6NPI64R3CDHN8880G08I1H3MURR7DHII0GRCDTQM8" }, "time_zone": "-07:00", "subscriber_email_addresses": [ "foo@domain.com", "bar@domain.com" ], "testCase": true, "priority": "P3" }' \ "https://cloudsupport.googleapis.com/v2/$parent/cases" ``` Python: ``` python import googleapiclient.discovery api_version = "v2" supportApiService = googleapiclient.discovery.build( serviceName="cloudsupport", version=api_version, discoveryServiceUrl=f"https://cloudsupport.googleapis.com/$discovery/rest?version={api_version}", ) request = supportApiService.cases().create( parent="projects/some-project", body={ "displayName": "A Test Case", "description": "This is a test case.", "testCase": True, "priority": "P2", "classification": { "id": "100IK2AKCLHMGRJ9CDGMOCGP8DM6UTB4BT262T31BT1M2T31DHNMENPO6KS36CPJ786L2TBFEHGN6NPI64R3CDHN8880G08I1H3MURR7DHII0GRCDTQM8" }, }, ) print(request.execute()) ``` * Note - this resource's API doesn't support deletion. When deleted, the resource will persist * on Google Cloud even though it will be deleted from Pulumi state. */ export declare class Case extends pulumi.CustomResource { /** * Get an existing Case 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 opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): Case; /** * Returns true if the given object is an instance of Case. 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 Case; /** * The issue classification applicable to this case. */ readonly classification: pulumi.Output; /** * A user-supplied email address to send case update notifications for. This should only be used in BYOID flows, where we cannot infer the user's email address directly from their EUCs. */ readonly contactEmail: pulumi.Output; /** * The time this case was created. */ readonly createTime: pulumi.Output; /** * The user who created the case. Note: The name and email will be obfuscated if the case was created by Google Support. */ readonly creator: pulumi.Output; /** * A broad description of the issue. */ readonly description: pulumi.Output; /** * The short summary of the issue reported in this case. */ readonly displayName: pulumi.Output; /** * Whether the case is currently escalated. */ readonly escalated: pulumi.Output; /** * The language the user has requested to receive support in. This should be a BCP 47 language code (e.g., `"en"`, `"zh-CN"`, `"zh-TW"`, `"ja"`, `"ko"`). If no language or an unsupported language is specified, this field defaults to English (en). Language selection during case creation may affect your available support options. For a list of supported languages and their support working hours, see: https://cloud.google.com/support/docs/language-working-hours */ readonly languageCode: pulumi.Output; /** * The resource name for the case. */ readonly name: pulumi.Output; /** * The priority of this case. */ readonly priority: pulumi.Output; /** * The current status of the support case. */ readonly state: pulumi.Output; /** * The email addresses to receive updates on this case. */ readonly subscriberEmailAddresses: pulumi.Output; /** * Whether this case was created for internal API testing and should not be acted on by the support team. */ readonly testCase: pulumi.Output; /** * The timezone of the user who created the support case. It should be in a format IANA recognizes: https://www.iana.org/time-zones. There is no additional validation done by the API. */ readonly timeZone: pulumi.Output; /** * The time this case was last updated. */ readonly updateTime: pulumi.Output; readonly v2Id: pulumi.Output; readonly v2Id1: pulumi.Output; /** * Create a Case 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: CaseArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a Case resource. */ export interface CaseArgs { /** * The issue classification applicable to this case. */ classification?: pulumi.Input; /** * A user-supplied email address to send case update notifications for. This should only be used in BYOID flows, where we cannot infer the user's email address directly from their EUCs. */ contactEmail?: pulumi.Input; /** * The user who created the case. Note: The name and email will be obfuscated if the case was created by Google Support. */ creator?: pulumi.Input; /** * A broad description of the issue. */ description?: pulumi.Input; /** * The short summary of the issue reported in this case. */ displayName?: pulumi.Input; /** * Whether the case is currently escalated. */ escalated?: pulumi.Input; /** * The language the user has requested to receive support in. This should be a BCP 47 language code (e.g., `"en"`, `"zh-CN"`, `"zh-TW"`, `"ja"`, `"ko"`). If no language or an unsupported language is specified, this field defaults to English (en). Language selection during case creation may affect your available support options. For a list of supported languages and their support working hours, see: https://cloud.google.com/support/docs/language-working-hours */ languageCode?: pulumi.Input; /** * The resource name for the case. */ name?: pulumi.Input; /** * The priority of this case. */ priority?: pulumi.Input; /** * The email addresses to receive updates on this case. */ subscriberEmailAddresses?: pulumi.Input[]>; /** * Whether this case was created for internal API testing and should not be acted on by the support team. */ testCase?: pulumi.Input; /** * The timezone of the user who created the support case. It should be in a format IANA recognizes: https://www.iana.org/time-zones. There is no additional validation done by the API. */ timeZone?: pulumi.Input; v2Id: pulumi.Input; v2Id1: pulumi.Input; }