Class OAuthRequirements (2.2.0)

public sealed class OAuthRequirements : Protobuf.IMessage<OAuthRequirements>, Protobuf.IBufferMessage

OAuth scopes are a way to define data and permissions on data. For example, there are scopes defined for "Read-only access to Google Calendar" and "Access to Cloud Platform". Users can consent to a scope for an application, giving it permission to access that data on their behalf.

OAuth scope specifications should be fairly coarse grained; a user will need to see and understand the text description of what your scope means.

In most cases: use one or at most two OAuth scopes for an entire family of products. If your product has multiple APIs, you should probably be sharing the OAuth scope across all of those APIs.

When you need finer grained OAuth consent screens: talk with your product management about how developers will use them in practice.

Please note that even though each of the canonical scopes is enough for a request to be accepted and passed to the backend, a request can still fail due to the backend requiring additional scopes or permissions.

Inheritance

Object > OAuthRequirements

Namespace

Google.Api

Assembly

Google.Api.CommonProtos.dll

Constructors

OAuthRequirements()

public OAuthRequirements()

OAuthRequirements(OAuthRequirements)

public OAuthRequirements(OAuthRequirements other)
Parameter
NameDescription
otherOAuthRequirements

Fields

CanonicalScopesFieldNumber

public const int CanonicalScopesFieldNumber = 1

Field number for the "canonical_scopes" field.

Field Value
TypeDescription
Int32

Properties

CanonicalScopes

public string CanonicalScopes { get; set; }

The list of publicly documented OAuth scopes that are allowed access. An OAuth token containing any of these scopes will be accepted.

Example:

canonical_scopes: https://www.googleapis.com/auth/calendar, https://www.googleapis.com/auth/calendar.read

Property Value
TypeDescription
String

Descriptor

public static Protobuf.Reflection.MessageDescriptor Descriptor { get; }
Property Value
TypeDescription
Protobuf.Reflection.MessageDescriptor

Parser

public static Protobuf.MessageParser<OAuthRequirements> Parser { get; }
Property Value
TypeDescription
Protobuf.MessageParser<OAuthRequirements>

Methods

CalculateSize()

public int CalculateSize()
Returns
TypeDescription
Int32

Clone()

public OAuthRequirements Clone()
Returns
TypeDescription
OAuthRequirements

Equals(OAuthRequirements)

public bool Equals(OAuthRequirements other)
Parameter
NameDescription
otherOAuthRequirements
Returns
TypeDescription
Boolean

Equals(Object)

public override bool Equals(object other)
Parameter
NameDescription
otherObject
Returns
TypeDescription
Boolean

GetHashCode()

public override int GetHashCode()
Returns
TypeDescription
Int32

MergeFrom(OAuthRequirements)

public void MergeFrom(OAuthRequirements other)
Parameter
NameDescription
otherOAuthRequirements

MergeFrom(Protobuf.CodedInputStream)

public void MergeFrom(Protobuf.CodedInputStream input)
Parameter
NameDescription
inputProtobuf.CodedInputStream

ToString()

public override string ToString()
Returns
TypeDescription
String

WriteTo(Protobuf.CodedOutputStream)

public void WriteTo(Protobuf.CodedOutputStream output)
Parameter
NameDescription
outputProtobuf.CodedOutputStream