public sealed class CaseServiceClientImpl : CaseServiceClientReference documentation and code samples for the Google Cloud Support v2 API class CaseServiceClientImpl.
CaseService client wrapper implementation, for convenient use.
Namespace
Google.Cloud.Support.V2Assembly
Google.Cloud.Support.V2.dll
Remarks
A service to manage Google Cloud support cases.
Constructors
CaseServiceClientImpl(CaseServiceClient, CaseServiceSettings, ILogger)
public CaseServiceClientImpl(CaseService.CaseServiceClient grpcClient, CaseServiceSettings settings, ILogger logger)Constructs a client wrapper for the CaseService service, with the specified gRPC client and settings.
| Parameters | |
|---|---|
| Name | Description |
grpcClient |
CaseServiceCaseServiceClientThe underlying gRPC client. |
settings |
CaseServiceSettingsThe base CaseServiceSettings used within this client. |
logger |
ILoggerOptional ILogger to use within this client. |
Properties
GrpcClient
public override CaseService.CaseServiceClient GrpcClient { get; }The underlying gRPC CaseService client
| Property Value | |
|---|---|
| Type | Description |
CaseServiceCaseServiceClient |
|
Methods
CloseCase(CloseCaseRequest, CallSettings)
public override Case CloseCase(CloseCaseRequest request, CallSettings callSettings = null)Close a case.
EXAMPLES:
cURL:
case="projects/some-project/cases/43595344"
curl \
--request POST \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://cloudsupport.googleapis.com/v2/$case:close"
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().close(
name="projects/some-project/cases/43595344"
)
print(request.execute())
| Parameters | |
|---|---|
| Name | Description |
request |
CloseCaseRequestThe request object containing all of the parameters for the API call. |
callSettings |
CallSettingsIf not null, applies overrides to this RPC call. |
| Returns | |
|---|---|
| Type | Description |
Case |
The RPC response. |
CloseCaseAsync(CloseCaseRequest, CallSettings)
public override Task<Case> CloseCaseAsync(CloseCaseRequest request, CallSettings callSettings = null)Close a case.
EXAMPLES:
cURL:
case="projects/some-project/cases/43595344"
curl \
--request POST \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://cloudsupport.googleapis.com/v2/$case:close"
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().close(
name="projects/some-project/cases/43595344"
)
print(request.execute())
| Parameters | |
|---|---|
| Name | Description |
request |
CloseCaseRequestThe request object containing all of the parameters for the API call. |
callSettings |
CallSettingsIf not null, applies overrides to this RPC call. |
| Returns | |
|---|---|
| Type | Description |
TaskCase |
A Task containing the RPC response. |
CreateCase(CreateCaseRequest, CallSettings)
public override Case CreateCase(CreateCaseRequest request, CallSettings callSettings = null)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:
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:
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())
| Parameters | |
|---|---|
| Name | Description |
request |
CreateCaseRequestThe request object containing all of the parameters for the API call. |
callSettings |
CallSettingsIf not null, applies overrides to this RPC call. |
| Returns | |
|---|---|
| Type | Description |
Case |
The RPC response. |
CreateCaseAsync(CreateCaseRequest, CallSettings)
public override Task<Case> CreateCaseAsync(CreateCaseRequest request, CallSettings callSettings = null)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:
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:
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())
| Parameters | |
|---|---|
| Name | Description |
request |
CreateCaseRequestThe request object containing all of the parameters for the API call. |
callSettings |
CallSettingsIf not null, applies overrides to this RPC call. |
| Returns | |
|---|---|
| Type | Description |
TaskCase |
A Task containing the RPC response. |
EscalateCase(EscalateCaseRequest, CallSettings)
public override Case EscalateCase(EscalateCaseRequest request, CallSettings callSettings = null)Escalate a case, starting the Google Cloud Support escalation management process.
This operation is only available for some support services. Go to https://cloud.google.com/support and look for 'Technical support escalations' in the feature list to find out which ones let you do that.
EXAMPLES:
cURL:
case="projects/some-project/cases/43595344"
curl \
--request POST \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
--header "Content-Type: application/json" \
--data '{
"escalation": {
"reason": "BUSINESS_IMPACT",
"justification": "This is a test escalation."
}
}' \
"https://cloudsupport.googleapis.com/v2/$case:escalate"
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().escalate(
name="projects/some-project/cases/43595344",
body={
"escalation": {
"reason": "BUSINESS_IMPACT",
"justification": "This is a test escalation.",
},
},
)
print(request.execute())
| Parameters | |
|---|---|
| Name | Description |
request |
EscalateCaseRequestThe request object containing all of the parameters for the API call. |
callSettings |
CallSettingsIf not null, applies overrides to this RPC call. |
| Returns | |
|---|---|
| Type | Description |
Case |
The RPC response. |
EscalateCaseAsync(EscalateCaseRequest, CallSettings)
public override Task<Case> EscalateCaseAsync(EscalateCaseRequest request, CallSettings callSettings = null)Escalate a case, starting the Google Cloud Support escalation management process.
This operation is only available for some support services. Go to https://cloud.google.com/support and look for 'Technical support escalations' in the feature list to find out which ones let you do that.
EXAMPLES:
cURL:
case="projects/some-project/cases/43595344"
curl \
--request POST \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
--header "Content-Type: application/json" \
--data '{
"escalation": {
"reason": "BUSINESS_IMPACT",
"justification": "This is a test escalation."
}
}' \
"https://cloudsupport.googleapis.com/v2/$case:escalate"
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().escalate(
name="projects/some-project/cases/43595344",
body={
"escalation": {
"reason": "BUSINESS_IMPACT",
"justification": "This is a test escalation.",
},
},
)
print(request.execute())
| Parameters | |
|---|---|
| Name | Description |
request |
EscalateCaseRequestThe request object containing all of the parameters for the API call. |
callSettings |
CallSettingsIf not null, applies overrides to this RPC call. |
| Returns | |
|---|---|
| Type | Description |
TaskCase |
A Task containing the RPC response. |
GetCase(GetCaseRequest, CallSettings)
public override Case GetCase(GetCaseRequest request, CallSettings callSettings = null)Retrieve a case.
EXAMPLES:
cURL:
case="projects/some-project/cases/16033687"
curl \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://cloudsupport.googleapis.com/v2/$case"
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().get(
name="projects/some-project/cases/43595344",
)
print(request.execute())
| Parameters | |
|---|---|
| Name | Description |
request |
GetCaseRequestThe request object containing all of the parameters for the API call. |
callSettings |
CallSettingsIf not null, applies overrides to this RPC call. |
| Returns | |
|---|---|
| Type | Description |
Case |
The RPC response. |
GetCaseAsync(GetCaseRequest, CallSettings)
public override Task<Case> GetCaseAsync(GetCaseRequest request, CallSettings callSettings = null)Retrieve a case.
EXAMPLES:
cURL:
case="projects/some-project/cases/16033687"
curl \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://cloudsupport.googleapis.com/v2/$case"
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().get(
name="projects/some-project/cases/43595344",
)
print(request.execute())
| Parameters | |
|---|---|
| Name | Description |
request |
GetCaseRequestThe request object containing all of the parameters for the API call. |
callSettings |
CallSettingsIf not null, applies overrides to this RPC call. |
| Returns | |
|---|---|
| Type | Description |
TaskCase |
A Task containing the RPC response. |
ListCases(ListCasesRequest, CallSettings)
public override PagedEnumerable<ListCasesResponse, Case> ListCases(ListCasesRequest request, CallSettings callSettings = null)Retrieve all cases under a parent, but not its children.
For example, listing cases under an organization only returns the cases
that are directly parented by that organization. To retrieve cases
under an organization and its projects, use cases.search.
EXAMPLES:
cURL:
parent="projects/some-project"
curl \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://cloudsupport.googleapis.com/v2/$parent/cases"
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().list(parent="projects/some-project")
print(request.execute())
| Parameters | |
|---|---|
| Name | Description |
request |
ListCasesRequestThe request object containing all of the parameters for the API call. |
callSettings |
CallSettingsIf not null, applies overrides to this RPC call. |
| Returns | |
|---|---|
| Type | Description |
PagedEnumerableListCasesResponseCase |
A pageable sequence of Case resources. |
ListCasesAsync(ListCasesRequest, CallSettings)
public override PagedAsyncEnumerable<ListCasesResponse, Case> ListCasesAsync(ListCasesRequest request, CallSettings callSettings = null)Retrieve all cases under a parent, but not its children.
For example, listing cases under an organization only returns the cases
that are directly parented by that organization. To retrieve cases
under an organization and its projects, use cases.search.
EXAMPLES:
cURL:
parent="projects/some-project"
curl \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://cloudsupport.googleapis.com/v2/$parent/cases"
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().list(parent="projects/some-project")
print(request.execute())
| Parameters | |
|---|---|
| Name | Description |
request |
ListCasesRequestThe request object containing all of the parameters for the API call. |
callSettings |
CallSettingsIf not null, applies overrides to this RPC call. |
| Returns | |
|---|---|
| Type | Description |
PagedAsyncEnumerableListCasesResponseCase |
A pageable asynchronous sequence of Case resources. |
SearchCaseClassifications(SearchCaseClassificationsRequest, CallSettings)
public override PagedEnumerable<SearchCaseClassificationsResponse, CaseClassification> SearchCaseClassifications(SearchCaseClassificationsRequest request, CallSettings callSettings = null)Retrieve valid classifications to use when creating a support case.
Classifications are hierarchical. Each classification is a string
containing all levels of the hierarchy separated by " > ". For example,
"Technical Issue > Compute > Compute Engine".
Classification IDs returned by this endpoint are valid for at least six
months. When a classification is deactivated, this endpoint immediately
stops returning it. After six months, case.create requests using the
classification will fail.
EXAMPLES:
cURL:
curl \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
'https://cloudsupport.googleapis.com/v2/caseClassifications:search?query=display_name:"*Compute%20Engine*"'
Python:
import googleapiclient.discovery
supportApiService = googleapiclient.discovery.build(
serviceName="cloudsupport",
version="v2",
discoveryServiceUrl=f"https://cloudsupport.googleapis.com/$discovery/rest?version=v2",
)
request = supportApiService.caseClassifications().search(
query='display_name:"*Compute Engine*"'
)
print(request.execute())
| Parameters | |
|---|---|
| Name | Description |
request |
SearchCaseClassificationsRequestThe request object containing all of the parameters for the API call. |
callSettings |
CallSettingsIf not null, applies overrides to this RPC call. |
| Returns | |
|---|---|
| Type | Description |
PagedEnumerableSearchCaseClassificationsResponseCaseClassification |
A pageable sequence of CaseClassification resources. |
SearchCaseClassificationsAsync(SearchCaseClassificationsRequest, CallSettings)
public override PagedAsyncEnumerable<SearchCaseClassificationsResponse, CaseClassification> SearchCaseClassificationsAsync(SearchCaseClassificationsRequest request, CallSettings callSettings = null)Retrieve valid classifications to use when creating a support case.
Classifications are hierarchical. Each classification is a string
containing all levels of the hierarchy separated by " > ". For example,
"Technical Issue > Compute > Compute Engine".
Classification IDs returned by this endpoint are valid for at least six
months. When a classification is deactivated, this endpoint immediately
stops returning it. After six months, case.create requests using the
classification will fail.
EXAMPLES:
cURL:
curl \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
'https://cloudsupport.googleapis.com/v2/caseClassifications:search?query=display_name:"*Compute%20Engine*"'
Python:
import googleapiclient.discovery
supportApiService = googleapiclient.discovery.build(
serviceName="cloudsupport",
version="v2",
discoveryServiceUrl=f"https://cloudsupport.googleapis.com/$discovery/rest?version=v2",
)
request = supportApiService.caseClassifications().search(
query='display_name:"*Compute Engine*"'
)
print(request.execute())
| Parameters | |
|---|---|
| Name | Description |
request |
SearchCaseClassificationsRequestThe request object containing all of the parameters for the API call. |
callSettings |
CallSettingsIf not null, applies overrides to this RPC call. |
| Returns | |
|---|---|
| Type | Description |
PagedAsyncEnumerableSearchCaseClassificationsResponseCaseClassification |
A pageable asynchronous sequence of CaseClassification resources. |
SearchCases(SearchCasesRequest, CallSettings)
public override PagedEnumerable<SearchCasesResponse, Case> SearchCases(SearchCasesRequest request, CallSettings callSettings = null)Search for cases using a query.
EXAMPLES:
cURL:
parent="projects/some-project"
curl \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://cloudsupport.googleapis.com/v2/$parent/cases:search"
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().search(
parent="projects/some-project", query="state=OPEN"
)
print(request.execute())
| Parameters | |
|---|---|
| Name | Description |
request |
SearchCasesRequestThe request object containing all of the parameters for the API call. |
callSettings |
CallSettingsIf not null, applies overrides to this RPC call. |
| Returns | |
|---|---|
| Type | Description |
PagedEnumerableSearchCasesResponseCase |
A pageable sequence of Case resources. |
SearchCasesAsync(SearchCasesRequest, CallSettings)
public override PagedAsyncEnumerable<SearchCasesResponse, Case> SearchCasesAsync(SearchCasesRequest request, CallSettings callSettings = null)Search for cases using a query.
EXAMPLES:
cURL:
parent="projects/some-project"
curl \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://cloudsupport.googleapis.com/v2/$parent/cases:search"
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().search(
parent="projects/some-project", query="state=OPEN"
)
print(request.execute())
| Parameters | |
|---|---|
| Name | Description |
request |
SearchCasesRequestThe request object containing all of the parameters for the API call. |
callSettings |
CallSettingsIf not null, applies overrides to this RPC call. |
| Returns | |
|---|---|
| Type | Description |
PagedAsyncEnumerableSearchCasesResponseCase |
A pageable asynchronous sequence of Case resources. |
UpdateCase(UpdateCaseRequest, CallSettings)
public override Case UpdateCase(UpdateCaseRequest request, CallSettings callSettings = null)Update a case. Only some fields can be updated.
EXAMPLES:
cURL:
case="projects/some-project/cases/43595344"
curl \
--request PATCH \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
--header "Content-Type: application/json" \
--data '{
"priority": "P1"
}' \
"https://cloudsupport.googleapis.com/v2/$case?updateMask=priority"
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().patch(
name="projects/some-project/cases/43112854",
body={
"displayName": "This is Now a New Title",
"priority": "P2",
},
)
print(request.execute())
| Parameters | |
|---|---|
| Name | Description |
request |
UpdateCaseRequestThe request object containing all of the parameters for the API call. |
callSettings |
CallSettingsIf not null, applies overrides to this RPC call. |
| Returns | |
|---|---|
| Type | Description |
Case |
The RPC response. |
UpdateCaseAsync(UpdateCaseRequest, CallSettings)
public override Task<Case> UpdateCaseAsync(UpdateCaseRequest request, CallSettings callSettings = null)Update a case. Only some fields can be updated.
EXAMPLES:
cURL:
case="projects/some-project/cases/43595344"
curl \
--request PATCH \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
--header "Content-Type: application/json" \
--data '{
"priority": "P1"
}' \
"https://cloudsupport.googleapis.com/v2/$case?updateMask=priority"
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().patch(
name="projects/some-project/cases/43112854",
body={
"displayName": "This is Now a New Title",
"priority": "P2",
},
)
print(request.execute())
| Parameters | |
|---|---|
| Name | Description |
request |
UpdateCaseRequestThe request object containing all of the parameters for the API call. |
callSettings |
CallSettingsIf not null, applies overrides to this RPC call. |
| Returns | |
|---|---|
| Type | Description |
TaskCase |
A Task containing the RPC response. |