Struct gapi_grpc::google::actions::sdk::v2::AccountLinking[][src]

pub struct AccountLinking {
    pub enable_account_creation: bool,
    pub linking_type: i32,
    pub auth_grant_type: i32,
    pub app_client_id: String,
    pub authorization_url: String,
    pub token_url: String,
    pub scopes: Vec<String>,
    pub learn_more_url: String,
    pub use_basic_auth_header: bool,
}
[]

AccountLinking allows Google to guide the user to sign-in to the App’s web services.

For Google Sign In and OAuth + Google Sign In linking types, Google generates a client ID identifying your App to Google (“Client ID issued by Google to your Actions” on Console UI). This field is read-only and can be checked by navigating to the Console UI’s Account Linking page. See: https://developers.google.com/assistant/identity/google-sign-in

Note: For all account linking setting types (except for Google Sign In), you must provide a username and password for a test account in Settings.testing_instructions for the review team to review the app (they will not be visible to users).

Fields

enable_account_creation: bool
[]

Required. If true, users are allowed to sign up for new accounts via voice. If false, account creation is only allowed on your website. Select this option if you want to display your terms of service or obtain user consents during sign-up. linking_type cannot be GOOGLE_SIGN_IN when this is false. linking_type cannot be OAUTH when this is true.

linking_type: i32
[]

Required. The linking type to use. See https://developers.google.com/assistant/identity for further details on the linking types.

auth_grant_type: i32
[]

Optional. Indicates the type of authentication for OAUTH linking_type.

app_client_id: String
[]

Optional. Client ID issued by your App to Google. This is the OAuth2 Client ID identifying Google to your service. Only set when using OAuth.

authorization_url: String
[]

Optional. Endpoint for your sign-in web page that supports OAuth2 code or implicit flows. URL must use HTTPS. Only set when using OAuth.

token_url: String
[]

Optional. OAuth2 endpoint for token exchange. URL must use HTTPS. This is not set when only using OAuth with IMPLICIT grant as the linking type. Only set when using OAuth.

scopes: Vec<String>
[]

Optional. List of permissions the user must consent to in order to use your service. Only set when using OAuth. Make sure to provide a Terms of Service in the directory information in LocalizedSettings.terms_of_service_url section if specifying this field.

learn_more_url: String
[]

Optional. This is the web page on your service which describes the permissions the user is granting to Google. Only set if using OAuth and Google Sign In. Make sure to provide a Terms of Service in the directory information in LocalizedSettings.terms_of_service_url section if specifying this field.

use_basic_auth_header: bool
[]

Optional. If true, allow Google to transmit client ID and secret via HTTP basic auth header. Otherwise, Google uses the client ID and secret inside the post body. Only set when using OAuth. Make sure to provide a Terms of Service in the directory information in LocalizedSettings.terms_of_service_url section if specifying this field.

Implementations

impl AccountLinking[src][]

pub fn linking_type(&self) -> LinkingType[src][]

Returns the enum value of linking_type, or the default if the field is set to an invalid enum value.

pub fn set_linking_type(&mut self, value: LinkingType)[src][]

Sets linking_type to the provided enum value.

pub fn auth_grant_type(&self) -> AuthGrantType[src][]

Returns the enum value of auth_grant_type, or the default if the field is set to an invalid enum value.

pub fn set_auth_grant_type(&mut self, value: AuthGrantType)[src][]

Sets auth_grant_type to the provided enum value.

Trait Implementations

impl Clone for AccountLinking[src][+]

impl Debug for AccountLinking[src][+]

impl Default for AccountLinking[src][+]

impl Message for AccountLinking[src][+]

impl PartialEq<AccountLinking> for AccountLinking[src][+]

impl StructuralPartialEq for AccountLinking[src]

Auto Trait Implementations

impl RefUnwindSafe for AccountLinking

impl Send for AccountLinking

impl Sync for AccountLinking

impl Unpin for AccountLinking

impl UnwindSafe for AccountLinking

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src][+]

impl<T> Borrow<T> for T where
    T: ?Sized
[src][+]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src][+]

impl<T> From<T> for T[src][+]

impl<T> Instrument for T[src][+]

impl<T> Instrument for T[src][+]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src][+]

impl<T> IntoRequest<T> for T[src][+]

impl<T> ToOwned for T where
    T: Clone
[src][+]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src][+]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src][+]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 
[src][+]

impl<T> WithSubscriber for T[src][+]