{
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/cloud-platform": {
          "description": "See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account."
        }
      }
    }
  },
  "basePath": "",
  "baseUrl": "https://cloudsupport.googleapis.com/",
  "batchPath": "batch",
  "canonicalName": "Cloud Support",
  "description": "Manages Google Cloud technical support cases for Customer Care support offerings. ",
  "discoveryVersion": "v1",
  "documentationLink": "https://cloud.google.com/support/docs/apis",
  "fullyEncodeReservedExpansion": true,
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "id": "cloudsupport:v2beta",
  "kind": "discovery#restDescription",
  "mtlsRootUrl": "https://cloudsupport.mtls.googleapis.com/",
  "name": "cloudsupport",
  "ownerDomain": "google.com",
  "ownerName": "Google",
  "parameters": {
    "$.xgafv": {
      "description": "V1 error format.",
      "enum": [
        "1",
        "2"
      ],
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "location": "query",
      "type": "string"
    },
    "access_token": {
      "description": "OAuth access token.",
      "location": "query",
      "type": "string"
    },
    "alt": {
      "default": "json",
      "description": "Data format for response.",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "location": "query",
      "type": "string"
    },
    "callback": {
      "description": "JSONP",
      "location": "query",
      "type": "string"
    },
    "fields": {
      "description": "Selector specifying which fields to include in a partial response.",
      "location": "query",
      "type": "string"
    },
    "key": {
      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
      "location": "query",
      "type": "string"
    },
    "oauth_token": {
      "description": "OAuth 2.0 token for the current user.",
      "location": "query",
      "type": "string"
    },
    "prettyPrint": {
      "default": "true",
      "description": "Returns response with indentations and line breaks.",
      "location": "query",
      "type": "boolean"
    },
    "quotaUser": {
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
      "location": "query",
      "type": "string"
    },
    "uploadType": {
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
      "location": "query",
      "type": "string"
    },
    "upload_protocol": {
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "location": "query",
      "type": "string"
    }
  },
  "protocol": "rest",
  "resources": {
    "attachments": {
      "methods": {
        "create": {
          "description": "Create a file attachment on a case or Cloud resource. The attachment object must have the following fields set: filename.",
          "flatPath": "v2beta/{v2betaId}/{v2betaId1}/attachments",
          "httpMethod": "POST",
          "id": "cloudsupport.attachments.create",
          "parameterOrder": [
            "parent"
          ],
          "parameters": {
            "parent": {
              "description": "Required. The resource name of the case (or case parent) to which the attachment should be attached.",
              "location": "path",
              "pattern": "^[^/]+/[^/]+$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v2beta/{+parent}/attachments",
          "request": {
            "$ref": "CreateAttachmentRequest"
          },
          "response": {
            "$ref": "Attachment"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        }
      }
    },
    "caseClassifications": {
      "methods": {
        "search": {
          "description": "Retrieve valid classifications to be used when creating a support case. The classications are hierarchical, with each classification containing all levels of the hierarchy, separated by \" > \". For example \"Technical Issue > Compute > Compute Engine\".",
          "flatPath": "v2beta/caseClassifications:search",
          "httpMethod": "GET",
          "id": "cloudsupport.caseClassifications.search",
          "parameterOrder": [],
          "parameters": {
            "pageSize": {
              "description": "The maximum number of cases fetched with each request.",
              "format": "int32",
              "location": "query",
              "type": "integer"
            },
            "pageToken": {
              "description": "A token identifying the page of results to return. If unspecified, the first page is retrieved.",
              "location": "query",
              "type": "string"
            },
            "query": {
              "description": "An expression written in the Cloud filter language. If non-empty, then only cases whose fields match the filter are returned. If empty, then no messages are filtered out.",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v2beta/caseClassifications:search",
          "response": {
            "$ref": "SearchCaseClassificationsResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        }
      }
    },
    "cases": {
      "methods": {
        "close": {
          "description": "Close the specified case.",
          "flatPath": "v2beta/{v2betaId}/{v2betaId1}/cases/{casesId}:close",
          "httpMethod": "POST",
          "id": "cloudsupport.cases.close",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "name": {
              "description": "Required. The fully qualified name of the case resource to be closed.",
              "location": "path",
              "pattern": "^[^/]+/[^/]+/cases/[^/]+$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v2beta/{+name}:close",
          "request": {
            "$ref": "CloseCaseRequest"
          },
          "response": {
            "$ref": "Case"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        },
        "create": {
          "description": "Create a new case and associate it with the given Cloud resource. The case object must have the following fields set: display_name, description, classification, and severity.",
          "flatPath": "v2beta/{v2betaId}/{v2betaId1}/cases",
          "httpMethod": "POST",
          "id": "cloudsupport.cases.create",
          "parameterOrder": [
            "parent"
          ],
          "parameters": {
            "parent": {
              "description": "Required. The name of the Cloud resource under which the case should be created.",
              "location": "path",
              "pattern": "^[^/]+/[^/]+$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v2beta/{+parent}/cases",
          "request": {
            "$ref": "Case"
          },
          "response": {
            "$ref": "Case"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        },
        "escalate": {
          "description": "Escalate a case. Escalating a case will initiate the Cloud Support escalation management process. This operation is only available to certain Customer Care tiers. Go to https://cloud.google.com/support and look for 'Technical support escalations' in the feature list to find out which tiers are able to perform escalations.",
          "flatPath": "v2beta/{v2betaId}/{v2betaId1}/cases/{casesId}:escalate",
          "httpMethod": "POST",
          "id": "cloudsupport.cases.escalate",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "name": {
              "description": "Required. The fully qualified name of the Case resource to be escalated.",
              "location": "path",
              "pattern": "^[^/]+/[^/]+/cases/[^/]+$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v2beta/{+name}:escalate",
          "request": {
            "$ref": "EscalateCaseRequest"
          },
          "response": {
            "$ref": "Case"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        },
        "get": {
          "description": "Retrieve the specified case.",
          "flatPath": "v2beta/{v2betaId}/{v2betaId1}/cases/{casesId}",
          "httpMethod": "GET",
          "id": "cloudsupport.cases.get",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "name": {
              "description": "Required. The fully qualified name of a case to be retrieved.",
              "location": "path",
              "pattern": "^[^/]+/[^/]+/cases/[^/]+$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v2beta/{+name}",
          "response": {
            "$ref": "Case"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        },
        "list": {
          "description": "Retrieve all cases under the specified parent. Note: Listing cases under an Organization returns only the cases directly parented by that organization. To retrieve all cases under an organization, including cases parented by projects under that organization, use `cases.search`.",
          "flatPath": "v2beta/{v2betaId}/{v2betaId1}/cases",
          "httpMethod": "GET",
          "id": "cloudsupport.cases.list",
          "parameterOrder": [
            "parent"
          ],
          "parameters": {
            "filter": {
              "description": "An expression written in filter language. If non-empty, the query returns the cases that match the filter. Else, the query doesn't filter the cases. Filter expressions use the following fields with the operators equals (`=`) and `AND`: - `state`: The accepted values are `OPEN` or `CLOSED`. - `priority`: The accepted values are `P0`, `P1`, `P2`, `P3`, or `P4`. You can specify multiple values for priority using the `OR` operator. For example, `priority=P1 OR priority=P2`. - [DEPRECATED] `severity`: The accepted values are `S0`, `S1`, `S2`, `S3`, or `S4`. - `creator.email`: The email address of the case creator. Examples: - `state=CLOSED` - `state=OPEN AND creator.email=\"tester@example.com\"` - `state=OPEN AND (priority=P0 OR priority=P1)`",
              "location": "query",
              "type": "string"
            },
            "pageSize": {
              "description": "The maximum number of cases fetched with each request. Defaults to 10.",
              "format": "int32",
              "location": "query",
              "type": "integer"
            },
            "pageToken": {
              "description": "A token identifying the page of results to return. If unspecified, the first page is retrieved.",
              "location": "query",
              "type": "string"
            },
            "parent": {
              "description": "Required. The fully qualified name of parent resource to list cases under.",
              "location": "path",
              "pattern": "^[^/]+/[^/]+$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v2beta/{+parent}/cases",
          "response": {
            "$ref": "ListCasesResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        },
        "patch": {
          "description": "Update the specified case. Only a subset of fields can be updated.",
          "flatPath": "v2beta/{v2betaId}/{v2betaId1}/cases/{casesId}",
          "httpMethod": "PATCH",
          "id": "cloudsupport.cases.patch",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "name": {
              "description": "The resource name for the case.",
              "location": "path",
              "pattern": "^[^/]+/[^/]+/cases/[^/]+$",
              "required": true,
              "type": "string"
            },
            "updateMask": {
              "description": "A list of attributes of the case object that should be updated as part of this request. Supported values are severity, display_name, and subscriber_email_addresses. If no fields are specified, all supported fields are updated. WARNING: If you do not provide a field mask, then you may accidentally clear some fields. For example, if you leave field mask empty and do not provide a value for subscriber_email_addresses, then subscriber_email_addresses is updated to empty.",
              "format": "google-fieldmask",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v2beta/{+name}",
          "request": {
            "$ref": "Case"
          },
          "response": {
            "$ref": "Case"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        },
        "search": {
          "description": "Search cases using the specified query.",
          "flatPath": "v2beta/cases:search",
          "httpMethod": "GET",
          "id": "cloudsupport.cases.search",
          "parameterOrder": [],
          "parameters": {
            "pageSize": {
              "description": "The maximum number of cases fetched with each request. The default page size is 10.",
              "format": "int32",
              "location": "query",
              "type": "integer"
            },
            "pageToken": {
              "description": "A token identifying the page of results to return. If unspecified, the first page is retrieved.",
              "location": "query",
              "type": "string"
            },
            "query": {
              "description": "An expression written in filter language. A query uses the following fields with the operators equals (`=`) and `AND`: - `organization`: An organization name in the form `organizations/`. - `project`: A project name in the form `projects/`. - `state`: The accepted values are `OPEN` or `CLOSED`. - `priority`: The accepted values are `P0`, `P1`, `P2`, `P3`, or `P4`. You can specify multiple values for priority using the `OR` operator. For example, `priority=P1 OR priority=P2`. - [DEPRECATED] `severity`: The accepted values are `S0`, `S1`, `S2`, `S3`, or `S4`. - `creator.email`: The email address of the case creator. - `billingAccount`: A billing account in the form `billingAccounts/` You must specify eitehr `organization` or `project`. To search across `displayName`, `description`, and comments, use a global restriction with no keyword or operator. For example, `\"my search\"`. To search only cases updated after a certain date, use `update_time` retricted with that particular date, time, and timezone in ISO datetime format. For example, `update_time>\"2020-01-01T00:00:00-05:00\"`. `update_time` only supports the greater than operator (`>`). Examples: - `organization=\"organizations/123456789\"` - `project=\"projects/my-project-id\"` - `project=\"projects/123456789\"` - `billing_account=\"billingAccounts/123456-A0B0C0-CUZ789\"` - `organization=\"organizations/123456789\" AND state=CLOSED` - `project=\"projects/my-project-id\" AND creator.email=\"tester@example.com\"` - `project=\"projects/my-project-id\" AND (priority=P0 OR priority=P1)`",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v2beta/cases:search",
          "response": {
            "$ref": "SearchCasesResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        }
      },
      "resources": {
        "attachments": {
          "methods": {
            "list": {
              "description": "Retrieve all attachments associated with a support case.",
              "flatPath": "v2beta/{v2betaId}/{v2betaId1}/cases/{casesId}/attachments",
              "httpMethod": "GET",
              "id": "cloudsupport.cases.attachments.list",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "pageSize": {
                  "description": "The maximum number of attachments fetched with each request. If not provided, the default is 10. The maximum page size that will be returned is 100.",
                  "format": "int32",
                  "location": "query",
                  "type": "integer"
                },
                "pageToken": {
                  "description": "A token identifying the page of results to return. If unspecified, the first page is retrieved.",
                  "location": "query",
                  "type": "string"
                },
                "parent": {
                  "description": "Required. The resource name of Case object for which attachments should be listed.",
                  "location": "path",
                  "pattern": "^[^/]+/[^/]+/cases/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v2beta/{+parent}/attachments",
              "response": {
                "$ref": "ListAttachmentsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            }
          }
        },
        "comments": {
          "methods": {
            "create": {
              "description": "Add a new comment to the specified Case. The comment object must have the following fields set: body.",
              "flatPath": "v2beta/{v2betaId}/{v2betaId1}/cases/{casesId}/comments",
              "httpMethod": "POST",
              "id": "cloudsupport.cases.comments.create",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "parent": {
                  "description": "Required. The resource name of Case to which this comment should be added.",
                  "location": "path",
                  "pattern": "^[^/]+/[^/]+/cases/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v2beta/{+parent}/comments",
              "request": {
                "$ref": "Comment"
              },
              "response": {
                "$ref": "Comment"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "list": {
              "description": "Retrieve all Comments associated with the Case object.",
              "flatPath": "v2beta/{v2betaId}/{v2betaId1}/cases/{casesId}/comments",
              "httpMethod": "GET",
              "id": "cloudsupport.cases.comments.list",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "pageSize": {
                  "description": "The maximum number of comments fetched with each request. Defaults to 10.",
                  "format": "int32",
                  "location": "query",
                  "type": "integer"
                },
                "pageToken": {
                  "description": "A token identifying the page of results to return. If unspecified, the first page is retrieved.",
                  "location": "query",
                  "type": "string"
                },
                "parent": {
                  "description": "Required. The resource name of Case object for which comments should be listed.",
                  "location": "path",
                  "pattern": "^[^/]+/[^/]+/cases/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v2beta/{+parent}/comments",
              "response": {
                "$ref": "ListCommentsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            }
          }
        }
      }
    },
    "media": {
      "methods": {
        "download": {
          "description": "Download a file attachment on a case. Note: HTTP requests must append \"?alt=media\" to the URL.",
          "flatPath": "v2beta/{v2betaId}/{v2betaId1}/cases/{casesId}/attachments/{attachmentsId}:download",
          "httpMethod": "GET",
          "id": "cloudsupport.media.download",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "name": {
              "description": "The resource name of the attachment to be downloaded.",
              "location": "path",
              "pattern": "^[^/]+/[^/]+/cases/[^/]+/attachments/[^/]+$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v2beta/{+name}:download",
          "response": {
            "$ref": "Media"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ],
          "supportsMediaDownload": true,
          "useMediaDownloadService": true
        },
        "upload": {
          "description": "Create a file attachment on a case or Cloud resource. The attachment object must have the following fields set: filename.",
          "flatPath": "v2beta/{v2betaId}/{v2betaId1}/cases/{casesId}/attachments",
          "httpMethod": "POST",
          "id": "cloudsupport.media.upload",
          "mediaUpload": {
            "accept": [
              "*/*"
            ],
            "protocols": {
              "simple": {
                "multipart": true,
                "path": "/upload/v2beta/{+parent}/attachments"
              }
            }
          },
          "parameterOrder": [
            "parent"
          ],
          "parameters": {
            "parent": {
              "description": "Required. The resource name of the case (or case parent) to which the attachment should be attached.",
              "location": "path",
              "pattern": "^[^/]+/[^/]+/cases/[^/]+$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v2beta/{+parent}/attachments",
          "request": {
            "$ref": "CreateAttachmentRequest"
          },
          "response": {
            "$ref": "Attachment"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ],
          "supportsMediaUpload": true
        }
      }
    }
  },
  "revision": "20230319",
  "rootUrl": "https://cloudsupport.googleapis.com/",
  "schemas": {
    "Actor": {
      "description": "An object containing information about the effective user and authenticated principal responsible for an action.",
      "id": "Actor",
      "properties": {
        "displayName": {
          "description": "The name to display for the actor. If not provided, it is inferred from credentials supplied during case creation. When an email is provided, a display name must also be provided. This will be obfuscated if the user is a Google Support agent.",
          "type": "string"
        },
        "email": {
          "description": "The email address of the actor. If not provided, it is inferred from credentials supplied during case creation. If the authenticated principal does not have an email address, one must be provided. When a name is provided, an email must also be provided. This will be obfuscated if the user is a Google Support agent.",
          "type": "string"
        },
        "googleSupport": {
          "description": "Output only. Whether the actor is a Google support actor.",
          "readOnly": true,
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "Attachment": {
      "description": "Represents a file attached to a support case.",
      "id": "Attachment",
      "properties": {
        "createTime": {
          "description": "Output only. The time at which the attachment was created.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "creator": {
          "$ref": "Actor",
          "description": "Output only. The user who uploaded the attachment. Note, the name and email will be obfuscated if the attachment was uploaded by Google support.",
          "readOnly": true
        },
        "filename": {
          "description": "The filename of the attachment (e.g. `\"graph.jpg\"`).",
          "type": "string"
        },
        "mimeType": {
          "description": "Output only. The MIME type of the attachment (e.g. text/plain).",
          "readOnly": true,
          "type": "string"
        },
        "name": {
          "description": "Output only. The resource name of the attachment.",
          "readOnly": true,
          "type": "string"
        },
        "sizeBytes": {
          "description": "Output only. The size of the attachment in bytes.",
          "format": "int64",
          "readOnly": true,
          "type": "string"
        }
      },
      "type": "object"
    },
    "Blobstore2Info": {
      "description": "# gdata.* are outside protos with mising documentation",
      "id": "Blobstore2Info",
      "properties": {
        "blobGeneration": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "int64",
          "type": "string"
        },
        "blobId": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "string"
        },
        "downloadReadHandle": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "byte",
          "type": "string"
        },
        "readToken": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "string"
        },
        "uploadMetadataContainer": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "byte",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Case": {
      "description": "A support case.",
      "id": "Case",
      "properties": {
        "classification": {
          "$ref": "CaseClassification",
          "description": "The issue classification applicable to this case."
        },
        "createTime": {
          "description": "Output only. The time this case was created.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "creator": {
          "$ref": "Actor",
          "description": "The user who created the case. Note: The name and email will be obfuscated if the case was created by Google Support."
        },
        "description": {
          "description": "A broad description of the issue.",
          "type": "string"
        },
        "displayName": {
          "description": "The short summary of the issue reported in this case.",
          "type": "string"
        },
        "escalated": {
          "description": "Whether the case is currently escalated.",
          "type": "boolean"
        },
        "languageCode": {
          "description": "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",
          "type": "string"
        },
        "name": {
          "description": "The resource name for the case.",
          "type": "string"
        },
        "priority": {
          "description": "The priority of this case. If this is set, do not set severity.",
          "enum": [
            "PRIORITY_UNSPECIFIED",
            "P0",
            "P1",
            "P2",
            "P3",
            "P4"
          ],
          "enumDescriptions": [
            "Priority is undefined or has not been set yet.",
            "Extreme impact on a production service. Service is hard down.",
            "Critical impact on a production service. Service is currently unusable.",
            "Severe impact on a production service. Service is usable but greatly impaired.",
            "Medium impact on a production service. Service is available, but moderately impaired.",
            "General questions or minor issues. Production service is fully available."
          ],
          "type": "string"
        },
        "severity": {
          "description": "The severity of this case. Deprecated. Use priority instead.",
          "enum": [
            "SEVERITY_UNSPECIFIED",
            "S0",
            "S1",
            "S2",
            "S3",
            "S4"
          ],
          "enumDescriptions": [
            "Severity is undefined or has not been set yet.",
            "Extreme impact on a production service. Service is hard down.",
            "Critical impact on a production service. Service is currently unusable.",
            "Severe impact on a production service. Service is usable but greatly impaired.",
            "Medium impact on a production service. Service is available, but moderately impaired.",
            "General questions or minor issues. Production service is fully available."
          ],
          "type": "string"
        },
        "state": {
          "description": "Output only. The current status of the support case.",
          "enum": [
            "STATE_UNSPECIFIED",
            "NEW",
            "IN_PROGRESS_GOOGLE_SUPPORT",
            "ACTION_REQUIRED",
            "SOLUTION_PROVIDED",
            "CLOSED"
          ],
          "enumDescriptions": [
            "Case is in an unknown state.",
            "The case has been created but no one is assigned to work on it yet.",
            "The case is currently being handled by Google support.",
            "Google is waiting for a response.",
            "A solution has been offered for the case, but it isn't yet closed.",
            "The case has been resolved."
          ],
          "readOnly": true,
          "type": "string"
        },
        "subscriberEmailAddresses": {
          "description": "The email addresses to receive updates on this case.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "testCase": {
          "description": "Whether this case was created for internal API testing and should not be acted on by the support team.",
          "type": "boolean"
        },
        "timeZone": {
          "description": "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.",
          "type": "string"
        },
        "updateTime": {
          "description": "Output only. The time this case was last updated.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        }
      },
      "type": "object"
    },
    "CaseClassification": {
      "description": "A classification object with a product type and value.",
      "id": "CaseClassification",
      "properties": {
        "displayName": {
          "description": "The display name of the classification.",
          "type": "string"
        },
        "id": {
          "description": "The unique ID for a classification. Must be specified for case creation. To retrieve valid classification IDs for case creation, use `caseClassifications.search`.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "CloseCaseRequest": {
      "description": "The request message for the CloseCase endpoint.",
      "id": "CloseCaseRequest",
      "properties": {},
      "type": "object"
    },
    "Comment": {
      "description": "A comment associated with a support case.",
      "id": "Comment",
      "properties": {
        "body": {
          "description": "The full comment body. Maximum of 120000 characters. This can contain rich text syntax.",
          "type": "string"
        },
        "createTime": {
          "description": "Output only. The time when this comment was created.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "creator": {
          "$ref": "Actor",
          "description": "Output only. The user or Google Support agent created this comment.",
          "readOnly": true
        },
        "name": {
          "description": "Output only. The resource name for the comment.",
          "readOnly": true,
          "type": "string"
        },
        "plainTextBody": {
          "description": "Output only. An automatically generated plain text version of body with all rich text syntax stripped.",
          "readOnly": true,
          "type": "string"
        }
      },
      "type": "object"
    },
    "CompositeMedia": {
      "description": "# gdata.* are outside protos with mising documentation",
      "id": "CompositeMedia",
      "properties": {
        "blobRef": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "byte",
          "type": "string"
        },
        "blobstore2Info": {
          "$ref": "Blobstore2Info",
          "description": "# gdata.* are outside protos with mising documentation"
        },
        "cosmoBinaryReference": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "byte",
          "type": "string"
        },
        "crc32cHash": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "uint32",
          "type": "integer"
        },
        "inline": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "byte",
          "type": "string"
        },
        "length": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "int64",
          "type": "string"
        },
        "md5Hash": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "byte",
          "type": "string"
        },
        "objectId": {
          "$ref": "ObjectId",
          "description": "# gdata.* are outside protos with mising documentation"
        },
        "path": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "string"
        },
        "referenceType": {
          "description": "# gdata.* are outside protos with mising documentation",
          "enum": [
            "PATH",
            "BLOB_REF",
            "INLINE",
            "BIGSTORE_REF",
            "COSMO_BINARY_REFERENCE"
          ],
          "enumDescriptions": [
            "# gdata.* are outside protos with mising documentation",
            "# gdata.* are outside protos with mising documentation",
            "# gdata.* are outside protos with mising documentation",
            "# gdata.* are outside protos with mising documentation",
            "# gdata.* are outside protos with mising documentation"
          ],
          "type": "string"
        },
        "sha1Hash": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "byte",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ContentTypeInfo": {
      "description": "# gdata.* are outside protos with mising documentation",
      "id": "ContentTypeInfo",
      "properties": {
        "bestGuess": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "string"
        },
        "fromBytes": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "string"
        },
        "fromFileName": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "string"
        },
        "fromHeader": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "string"
        },
        "fromUrlPath": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "string"
        }
      },
      "type": "object"
    },
    "CreateAttachmentRequest": {
      "description": "The request message for the CreateAttachment endpoint.",
      "id": "CreateAttachmentRequest",
      "properties": {
        "attachment": {
          "$ref": "Attachment",
          "description": "Required. The attachment to be created."
        }
      },
      "type": "object"
    },
    "DiffChecksumsResponse": {
      "description": "# gdata.* are outside protos with mising documentation",
      "id": "DiffChecksumsResponse",
      "properties": {
        "checksumsLocation": {
          "$ref": "CompositeMedia",
          "description": "# gdata.* are outside protos with mising documentation"
        },
        "chunkSizeBytes": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "int64",
          "type": "string"
        },
        "objectLocation": {
          "$ref": "CompositeMedia",
          "description": "# gdata.* are outside protos with mising documentation"
        },
        "objectSizeBytes": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "int64",
          "type": "string"
        },
        "objectVersion": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "string"
        }
      },
      "type": "object"
    },
    "DiffDownloadResponse": {
      "description": "# gdata.* are outside protos with mising documentation",
      "id": "DiffDownloadResponse",
      "properties": {
        "objectLocation": {
          "$ref": "CompositeMedia",
          "description": "# gdata.* are outside protos with mising documentation"
        }
      },
      "type": "object"
    },
    "DiffUploadRequest": {
      "description": "# gdata.* are outside protos with mising documentation",
      "id": "DiffUploadRequest",
      "properties": {
        "checksumsInfo": {
          "$ref": "CompositeMedia",
          "description": "# gdata.* are outside protos with mising documentation"
        },
        "objectInfo": {
          "$ref": "CompositeMedia",
          "description": "# gdata.* are outside protos with mising documentation"
        },
        "objectVersion": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "string"
        }
      },
      "type": "object"
    },
    "DiffUploadResponse": {
      "description": "# gdata.* are outside protos with mising documentation",
      "id": "DiffUploadResponse",
      "properties": {
        "objectVersion": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "string"
        },
        "originalObject": {
          "$ref": "CompositeMedia",
          "description": "# gdata.* are outside protos with mising documentation"
        }
      },
      "type": "object"
    },
    "DiffVersionResponse": {
      "description": "# gdata.* are outside protos with mising documentation",
      "id": "DiffVersionResponse",
      "properties": {
        "objectSizeBytes": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "int64",
          "type": "string"
        },
        "objectVersion": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "string"
        }
      },
      "type": "object"
    },
    "DownloadParameters": {
      "description": "# gdata.* are outside protos with mising documentation",
      "id": "DownloadParameters",
      "properties": {
        "allowGzipCompression": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "boolean"
        },
        "ignoreRange": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "EscalateCaseRequest": {
      "description": "The request message for the EscalateCase endpoint.",
      "id": "EscalateCaseRequest",
      "properties": {
        "escalation": {
          "$ref": "Escalation",
          "description": "The escalation object to be sent with the escalation request."
        }
      },
      "type": "object"
    },
    "Escalation": {
      "description": "An escalation of a support case.",
      "id": "Escalation",
      "properties": {
        "justification": {
          "description": "Required. A free text description to accompany the `reason` field above. Provides additional context on why the case is being escalated.",
          "type": "string"
        },
        "reason": {
          "description": "Required. The reason why the Case is being escalated.",
          "enum": [
            "REASON_UNSPECIFIED",
            "RESOLUTION_TIME",
            "TECHNICAL_EXPERTISE",
            "BUSINESS_IMPACT"
          ],
          "enumDescriptions": [
            "The escalation reason is in an unknown state or has not been specified.",
            "The case is taking too long to resolve.",
            "The support agent does not have the expertise required to successfully resolve the issue.",
            "The issue is having a significant business impact."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "ListAttachmentsResponse": {
      "description": "The response message for the ListAttachments endpoint.",
      "id": "ListAttachmentsResponse",
      "properties": {
        "attachments": {
          "description": "The list of attachments associated with the given case.",
          "items": {
            "$ref": "Attachment"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "A token to retrieve the next page of results. This should be set in the `page_token` field of subsequent `cases.attachments.list` requests. If unspecified, there are no more results to retrieve.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ListCasesResponse": {
      "description": "The response message for the ListCases endpoint.",
      "id": "ListCasesResponse",
      "properties": {
        "cases": {
          "description": "The list of cases associated with the cloud resource, after any filters have been applied.",
          "items": {
            "$ref": "Case"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "A token to retrieve the next page of results. This should be set in the `page_token` field of subsequent `ListCasesRequest` message that is issued. If unspecified, there are no more results to retrieve.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ListCommentsResponse": {
      "description": "The response message for the ListComments endpoint.",
      "id": "ListCommentsResponse",
      "properties": {
        "comments": {
          "description": "The list of Comments associated with the given Case.",
          "items": {
            "$ref": "Comment"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "A token to retrieve the next page of results. This should be set in the `page_token` field of subsequent `ListCommentsRequest` message that is issued. If unspecified, there are no more results to retrieve.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Media": {
      "description": "# gdata.* are outside protos with mising documentation",
      "id": "Media",
      "properties": {
        "algorithm": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "string"
        },
        "bigstoreObjectRef": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "byte",
          "type": "string"
        },
        "blobRef": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "byte",
          "type": "string"
        },
        "blobstore2Info": {
          "$ref": "Blobstore2Info",
          "description": "# gdata.* are outside protos with mising documentation"
        },
        "compositeMedia": {
          "description": "# gdata.* are outside protos with mising documentation",
          "items": {
            "$ref": "CompositeMedia"
          },
          "type": "array"
        },
        "contentType": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "string"
        },
        "contentTypeInfo": {
          "$ref": "ContentTypeInfo",
          "description": "# gdata.* are outside protos with mising documentation"
        },
        "cosmoBinaryReference": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "byte",
          "type": "string"
        },
        "crc32cHash": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "uint32",
          "type": "integer"
        },
        "diffChecksumsResponse": {
          "$ref": "DiffChecksumsResponse",
          "description": "# gdata.* are outside protos with mising documentation"
        },
        "diffDownloadResponse": {
          "$ref": "DiffDownloadResponse",
          "description": "# gdata.* are outside protos with mising documentation"
        },
        "diffUploadRequest": {
          "$ref": "DiffUploadRequest",
          "description": "# gdata.* are outside protos with mising documentation"
        },
        "diffUploadResponse": {
          "$ref": "DiffUploadResponse",
          "description": "# gdata.* are outside protos with mising documentation"
        },
        "diffVersionResponse": {
          "$ref": "DiffVersionResponse",
          "description": "# gdata.* are outside protos with mising documentation"
        },
        "downloadParameters": {
          "$ref": "DownloadParameters",
          "description": "# gdata.* are outside protos with mising documentation"
        },
        "filename": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "string"
        },
        "hash": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "string"
        },
        "hashVerified": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "boolean"
        },
        "inline": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "byte",
          "type": "string"
        },
        "isPotentialRetry": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "boolean"
        },
        "length": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "int64",
          "type": "string"
        },
        "md5Hash": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "byte",
          "type": "string"
        },
        "mediaId": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "byte",
          "type": "string"
        },
        "objectId": {
          "$ref": "ObjectId",
          "description": "# gdata.* are outside protos with mising documentation"
        },
        "path": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "string"
        },
        "referenceType": {
          "description": "# gdata.* are outside protos with mising documentation",
          "enum": [
            "PATH",
            "BLOB_REF",
            "INLINE",
            "GET_MEDIA",
            "COMPOSITE_MEDIA",
            "BIGSTORE_REF",
            "DIFF_VERSION_RESPONSE",
            "DIFF_CHECKSUMS_RESPONSE",
            "DIFF_DOWNLOAD_RESPONSE",
            "DIFF_UPLOAD_REQUEST",
            "DIFF_UPLOAD_RESPONSE",
            "COSMO_BINARY_REFERENCE",
            "ARBITRARY_BYTES"
          ],
          "enumDescriptions": [
            "# gdata.* are outside protos with mising documentation",
            "# gdata.* are outside protos with mising documentation",
            "# gdata.* are outside protos with mising documentation",
            "# gdata.* are outside protos with mising documentation",
            "# gdata.* are outside protos with mising documentation",
            "# gdata.* are outside protos with mising documentation",
            "# gdata.* are outside protos with mising documentation",
            "# gdata.* are outside protos with mising documentation",
            "# gdata.* are outside protos with mising documentation",
            "# gdata.* are outside protos with mising documentation",
            "# gdata.* are outside protos with mising documentation",
            "# gdata.* are outside protos with mising documentation",
            "# gdata.* are outside protos with mising documentation"
          ],
          "type": "string"
        },
        "sha1Hash": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "byte",
          "type": "string"
        },
        "sha256Hash": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "byte",
          "type": "string"
        },
        "timestamp": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "uint64",
          "type": "string"
        },
        "token": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ObjectId": {
      "description": "# gdata.* are outside protos with mising documentation",
      "id": "ObjectId",
      "properties": {
        "bucketName": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "string"
        },
        "generation": {
          "description": "# gdata.* are outside protos with mising documentation",
          "format": "int64",
          "type": "string"
        },
        "objectName": {
          "description": "# gdata.* are outside protos with mising documentation",
          "type": "string"
        }
      },
      "type": "object"
    },
    "SearchCaseClassificationsResponse": {
      "description": "The response message for SearchCaseClassifications endpoint.",
      "id": "SearchCaseClassificationsResponse",
      "properties": {
        "caseClassifications": {
          "description": "The classifications retrieved.",
          "items": {
            "$ref": "CaseClassification"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "A token to retrieve the next page of results. This should be set in the `page_token` field of subsequent `SearchCaseClassificationsRequest` message that is issued. If unspecified, there are no more results to retrieve.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "SearchCasesResponse": {
      "description": "The response message for the SearchCases endpoint.",
      "id": "SearchCasesResponse",
      "properties": {
        "cases": {
          "description": "The list of Case associated with the cloud resource, after any filters have been applied.",
          "items": {
            "$ref": "Case"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "A token to retrieve the next page of results. This should be set in the `page_token` field of subsequent `SearchCaseRequest` message that is issued. If unspecified, there are no more results to retrieve.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "WorkflowOperationMetadata": {
      "description": "Metadata about the operation. Used to lookup the current status.",
      "id": "WorkflowOperationMetadata",
      "properties": {
        "namespace": {
          "description": "The namespace that the job was scheduled in. Must be included in the workflow metadata so the workflow status can be retrieved.",
          "type": "string"
        },
        "operationAction": {
          "description": "The type of action the operation is classified as.",
          "enum": [
            "OPERATION_ACTION_UNSPECIFIED",
            "CREATE_SUPPORT_ACCOUNT",
            "UPDATE_SUPPORT_ACCOUNT",
            "PURCHASE_SUPPORT_ACCOUNT"
          ],
          "enumDescriptions": [
            "Operation action is not specified.",
            "Operation pertains to the creation of a new support account.",
            "Operation pertains to the updating of an existing support account.",
            "Operation pertains to the purchasing of a support plan that may either create or update a support account."
          ],
          "type": "string"
        },
        "workflowOperationType": {
          "description": "Which version of the workflow service this operation came from.",
          "enum": [
            "UNKNOWN_OPERATION_TYPE",
            "WORKFLOWS_V1",
            "WORKFLOWS_V2"
          ],
          "enumDescriptions": [
            "Unknown version.",
            "Version 1.",
            "Version 2."
          ],
          "type": "string"
        }
      },
      "type": "object"
    }
  },
  "servicePath": "",
  "title": "Google Cloud Support API",
  "version": "v2beta",
  "version_module": true
}