Class ClientExtensions (2.15.0)

public static class ClientExtensions

Holder for extension identifiers generated from the top level of google/api/client.proto

Inheritance

object > ClientExtensions

Namespace

Google.Api

Assembly

Google.Api.CommonProtos.dll

Fields

ApiVersion

public static readonly Extension<ServiceOptions, string> ApiVersion

The API version of this service, which should be sent by version-aware clients to the service. This allows services to abide by the schema and behavior of the service at the time this API version was deployed. The format of the API version must be treated as opaque by clients. Services may use a format with an apparent structure, but clients must not rely on this to determine components within an API version, or attempt to construct other valid API versions. Note that this is for upcoming functionality and may not be implemented for all services.

Example:

service Foo { option (google.api.api_version) = "v1_20230821_preview"; }

Field Value
Type Description
ExtensionServiceOptionsstring

DefaultHost

public static readonly Extension<ServiceOptions, string> DefaultHost

The hostname for this service. This should be specified with no prefix or protocol.

Example:

service Foo { option (google.api.default_host) = "foo.googleapi.com"; ... }

Field Value
Type Description
ExtensionServiceOptionsstring

MethodSignature

public static readonly RepeatedExtension<MethodOptions, string> MethodSignature

A definition of a client library method signature.

In client libraries, each proto RPC corresponds to one or more methods which the end user is able to call, and calls the underlying RPC. Normally, this method receives a single argument (a struct or instance corresponding to the RPC request object). Defining this field will add one or more overloads providing flattened or simpler method signatures in some languages.

The fields on the method signature are provided as a comma-separated string.

For example, the proto RPC and annotation:

rpc CreateSubscription(CreateSubscriptionRequest) returns (Subscription) { option (google.api.method_signature) = "name,topic"; }

Would add the following Java overload (in addition to the method accepting the request object):

public final Subscription createSubscription(String name, String topic)

The following backwards-compatibility guidelines apply:

  • Adding this annotation to an unannotated method is backwards compatible.
  • Adding this annotation to a method which already has existing method signature annotations is backwards compatible if and only if the new method signature annotation is last in the sequence.
  • Modifying or removing an existing method signature annotation is a breaking change.
  • Re-ordering existing method signature annotations is a breaking change.
Field Value
Type Description
RepeatedExtensionMethodOptionsstring

OauthScopes

public static readonly Extension<ServiceOptions, string> OauthScopes

OAuth scopes needed for the client.

Example:

service Foo { option (google.api.oauth_scopes) = \ "https://www.googleapis.com/auth/cloud-platform"; ... }

If there is more than one scope, use a comma-separated string:

Example:

service Foo { option (google.api.oauth_scopes) = \ "https://www.googleapis.com/auth/cloud-platform," "https://www.googleapis.com/auth/monitoring"; ... }

Field Value
Type Description
ExtensionServiceOptionsstring