pub struct CaseMethods<'a, C>where
C: 'a,{ /* private fields */ }
Expand description
A builder providing access to all methods supported on case resources.
It is not used directly, but through the CloudSupport
hub.
§Example
Instantiate a resource builder
extern crate hyper;
extern crate hyper_rustls;
extern crate google_cloudsupport2_beta as cloudsupport2_beta;
use cloudsupport2_beta::{CloudSupport, FieldMask, hyper_rustls, hyper_util, yup_oauth2};
let secret: yup_oauth2::ApplicationSecret = Default::default();
let auth = yup_oauth2::InstalledFlowAuthenticator::builder(
secret,
yup_oauth2::InstalledFlowReturnMethod::HTTPRedirect,
).build().await.unwrap();
let client = hyper_util::client::legacy::Client::builder(
hyper_util::rt::TokioExecutor::new()
)
.build(
hyper_rustls::HttpsConnectorBuilder::new()
.with_native_roots()
.unwrap()
.https_or_http()
.enable_http1()
.build()
);
let mut hub = CloudSupport::new(client, auth);
// Usually you wouldn't bind this to a variable, but keep calling *CallBuilders*
// like `attachments_list(...)`, `close(...)`, `comments_create(...)`, `comments_list(...)`, `create(...)`, `escalate(...)`, `get(...)`, `list(...)`, `patch(...)`, `search(...)` and `show_feed(...)`
// to build up your call.
let rb = hub.cases();
Implementations§
Source§impl<'a, C> CaseMethods<'a, C>
impl<'a, C> CaseMethods<'a, C>
Sourcepub fn attachments_list(&self, parent: &str) -> CaseAttachmentListCall<'a, C>
pub fn attachments_list(&self, parent: &str) -> CaseAttachmentListCall<'a, C>
Create a builder to help you perform the following task:
List all the attachments associated with a support case. EXAMPLES: cURL: shell case="projects/some-project/cases/23598314" curl \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://cloudsupport.googleapis.com/v2/$case/attachments"
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() .attachments() .list(parent="projects/some-project/cases/43595344") ) print(request.execute())
§Arguments
parent
- Required. The name of the case for which attachments should be listed.
Sourcepub fn comments_create(
&self,
request: Comment,
parent: &str,
) -> CaseCommentCreateCall<'a, C>
pub fn comments_create( &self, request: Comment, parent: &str, ) -> CaseCommentCreateCall<'a, C>
Create a builder to help you perform the following task:
Add a new comment to a case. The comment must have the following fields set: body
. EXAMPLES: cURL: shell case="projects/some-project/cases/43591344" curl \ --request POST \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ --header 'Content-Type: application/json' \ --data '{ "body": "This is a test comment." }' \ "https://cloudsupport.googleapis.com/v2/$case/comments"
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() .comments() .create( parent="projects/some-project/cases/43595344", body={"body": "This is a test comment."}, ) ) print(request.execute())
§Arguments
request
- No description provided.parent
- Required. The name of the case to which the comment should be added.
Sourcepub fn comments_list(&self, parent: &str) -> CaseCommentListCall<'a, C>
pub fn comments_list(&self, parent: &str) -> CaseCommentListCall<'a, C>
Create a builder to help you perform the following task:
List all the comments associated with a case. EXAMPLES: cURL: shell case="projects/some-project/cases/43595344" curl \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://cloudsupport.googleapis.com/v2/$case/comments"
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() .comments() .list(parent="projects/some-project/cases/43595344") ) print(request.execute())
§Arguments
parent
- Required. The name of the case for which to list comments.
Sourcepub fn close(
&self,
request: CloseCaseRequest,
name: &str,
) -> CaseCloseCall<'a, C>
pub fn close( &self, request: CloseCaseRequest, name: &str, ) -> CaseCloseCall<'a, C>
Create a builder to help you perform the following task:
Close a case. EXAMPLES: cURL: shell 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: 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())
§Arguments
request
- No description provided.name
- Required. The name of the case to close.
Sourcepub fn create(&self, request: Case, parent: &str) -> CaseCreateCall<'a, C>
pub fn create(&self, request: Case, parent: &str) -> CaseCreateCall<'a, C>
Create a builder to help you perform the following task:
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())
§Arguments
request
- No description provided.parent
- Required. The name of the parent under which the case should be created.
Sourcepub fn escalate(
&self,
request: EscalateCaseRequest,
name: &str,
) -> CaseEscalateCall<'a, C>
pub fn escalate( &self, request: EscalateCaseRequest, name: &str, ) -> CaseEscalateCall<'a, C>
Create a builder to help you perform the following task:
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: shell 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: 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())
§Arguments
request
- No description provided.name
- Required. The name of the case to be escalated.
Sourcepub fn get(&self, name: &str) -> CaseGetCall<'a, C>
pub fn get(&self, name: &str) -> CaseGetCall<'a, C>
Create a builder to help you perform the following task:
Retrieve a case. EXAMPLES: cURL: shell case="projects/some-project/cases/16033687" curl \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://cloudsupport.googleapis.com/v2/$case"
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().get( name="projects/some-project/cases/43595344", ) print(request.execute())
§Arguments
name
- Required. The full name of a case to be retrieved.
Sourcepub fn list(&self, parent: &str) -> CaseListCall<'a, C>
pub fn list(&self, parent: &str) -> CaseListCall<'a, C>
Create a builder to help you perform the following task:
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: shell parent="projects/some-project" curl \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ "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().list(parent="projects/some-project") print(request.execute())
§Arguments
parent
- Required. The name of a parent to list cases under.
Sourcepub fn patch(&self, request: Case, name: &str) -> CasePatchCall<'a, C>
pub fn patch(&self, request: Case, name: &str) -> CasePatchCall<'a, C>
Create a builder to help you perform the following task:
Update a case. Only some fields can be updated. EXAMPLES: cURL: shell 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: 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())
§Arguments
request
- No description provided.name
- The resource name for the case.
Sourcepub fn search(&self) -> CaseSearchCall<'a, C>
pub fn search(&self) -> CaseSearchCall<'a, C>
Create a builder to help you perform the following task:
Search for cases using a query. EXAMPLES: cURL: shell parent="projects/some-project" curl \ --header "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://cloudsupport.googleapis.com/v2/$parent/cases:search"
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().search( parent="projects/some-project", query="state=OPEN" ) print(request.execute())
Sourcepub fn show_feed(&self, parent: &str) -> CaseShowFeedCall<'a, C>
pub fn show_feed(&self, parent: &str) -> CaseShowFeedCall<'a, C>
Create a builder to help you perform the following task:
Show items in the feed of this case, including case emails, attachments, and comments.
§Arguments
parent
- Required. The resource name of the case for which feed items should be listed.
Trait Implementations§
impl<'a, C> MethodsBuilder for CaseMethods<'a, C>
Auto Trait Implementations§
impl<'a, C> Freeze for CaseMethods<'a, C>
impl<'a, C> !RefUnwindSafe for CaseMethods<'a, C>
impl<'a, C> Send for CaseMethods<'a, C>where
C: Sync,
impl<'a, C> Sync for CaseMethods<'a, C>where
C: Sync,
impl<'a, C> Unpin for CaseMethods<'a, C>
impl<'a, C> !UnwindSafe for CaseMethods<'a, C>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more