Skip to main content

Messages

ClientLibrarySettings

FieldTypeDescription
versionstringVersion of the API to apply these settings to. This is the full protobuf package for the API, ending in the version element. Examples: “google.cloud.speech.v1” and “google.spanner.admin.database.v1”.
launch_stageLaunchStageLaunch stage of this version of the API.
rest_numeric_enumsboolWhen using transport=rest, the client request will encode enums as numbers rather than strings.
java_settingsJavaSettingsSettings for legacy Java features, supported in the Service YAML.
cpp_settingsCppSettingsSettings for C++ client libraries.
php_settingsPhpSettingsSettings for PHP client libraries.
python_settingsPythonSettingsSettings for Python client libraries.
node_settingsNodeSettingsSettings for Node client libraries.
dotnet_settingsDotnetSettingsSettings for .NET client libraries.
ruby_settingsRubySettingsSettings for Ruby client libraries.
go_settingsGoSettingsSettings for Go client libraries.

CommonLanguageSettings

FieldTypeDescription
reference_docs_uristringLink to automatically generated reference documentation. Example: https://cloud.google.com/nodejs/docs/reference/asset/latest
destinationsrepeated ``ClientLibraryDestinationThe destination where API teams want this client library to be published.
selective_gapic_generationSelectiveGapicGenerationConfiguration for which RPCs should be generated in the GAPIC client.

CppSettings

FieldTypeDescription
commonCommonLanguageSettingsSome settings.

DotnetSettings

FieldTypeDescription
commonCommonLanguageSettingsSome settings.
renamed_servicesrepeated ``DotnetSettings.RenamedServicesEntryMap from original service names to renamed versions. This is used when the default generated types would cause a naming conflict. (Neither name is fully-qualified.) Example: Subscriber to SubscriberServiceApi.
renamed_resourcesrepeated ``DotnetSettings.RenamedResourcesEntryMap from full resource types to the effective short name for the resource. This is used when otherwise resource named from different services would cause naming collisions. Example entry: “datalabeling.googleapis.com/Dataset”: “DataLabelingDataset”
ignored_resourcesrepeated ``stringList of full resource types to ignore during generation. This is typically used for API-specific Location resources, which should be handled by the generator as if they were actually the common Location resources. Example entry: “documentai.googleapis.com/Location”
forced_namespace_aliasesrepeated ``stringNamespaces which must be aliased in snippets due to a known (but non-generator-predictable) naming collision
handwritten_signaturesrepeated ``stringMethod signatures (in the form “service.method(signature)”) which are provided separately, so shouldn’t be generated. Snippets calling these methods are still generated, however.

RenamedResourcesEntry

FieldTypeDescription
keystring
valuestring

RenamedServicesEntry

FieldTypeDescription
keystring
valuestring

GoSettings

FieldTypeDescription
commonCommonLanguageSettingsSome settings.
renamed_servicesrepeated ``GoSettings.RenamedServicesEntryMap of service names to renamed services. Keys are the package relative service names and values are the name to be used for the service client and call options. publishing: go_settings: renamed_services: Publisher: TopicAdmin

RenamedServicesEntry

FieldTypeDescription
keystring
valuestring

JavaSettings

FieldTypeDescription
library_packagestringThe package name to use in Java. Clobbers the java_package option set in the protobuf. This should be used only by APIs who have already set the language_settings.java.package_name” field in gapic.yaml. API teams should use the protobuf java_package option where possible. Example of a YAML configuration:: publishing: java_settings: library_package: com.google.cloud.pubsub.v1
service_class_namesrepeated ``JavaSettings.ServiceClassNamesEntryConfigure the Java class name to use instead of the service’s for its corresponding generated GAPIC client. Keys are fully-qualified service names as they appear in the protobuf (including the full the language_settings.java.interface_names” field in gapic.yaml. API teams should otherwise use the service name as it appears in the protobuf. Example of a YAML configuration:: publishing: java_settings: service_class_names: - google.pubsub.v1.Publisher: TopicAdmin - google.pubsub.v1.Subscriber: SubscriptionAdmin
commonCommonLanguageSettingsSome settings.

ServiceClassNamesEntry

FieldTypeDescription
keystring
valuestring

MethodSettings

FieldTypeDescription
selectorstringThe fully qualified name of the method, for which the options below apply. This is used to find the method to apply the options. Example: publishing: method_settings: - selector: google.storage.control.v2.StorageControl.CreateFolder # method settings for CreateFolder…
long_runningMethodSettings.LongRunningDescribes settings to use for long-running operations when generating API methods for RPCs. Complements RPCs that use the annotations in google/longrunning/operations.proto. Example of a YAML configuration:: publishing: method_settings: - selector: google.cloud.speech.v2.Speech.BatchRecognize long_running: initial_poll_delay: 60s # 1 minute poll_delay_multiplier: 1.5 max_poll_delay: 360s # 6 minutes total_poll_timeout: 54000s # 90 minutes
auto_populated_fieldsrepeated ``stringList of top-level fields of the request message, that should be automatically populated by the client libraries based on their (google.api.field_info).format. Currently supported format: UUID4. Example of a YAML configuration: publishing: method_settings: - selector: google.example.v1.ExampleService.CreateExample auto_populated_fields: - request_id

LongRunning

FieldTypeDescription
initial_poll_delaygoogle.protobuf.DurationInitial delay after which the first poll request will be made. Default value: 5 seconds.
poll_delay_multiplierfloatMultiplier to gradually increase delay between subsequent polls until it reaches max_poll_delay. Default value: 1.5.
max_poll_delaygoogle.protobuf.DurationMaximum time between two subsequent poll requests. Default value: 45 seconds.
total_poll_timeoutgoogle.protobuf.DurationTotal polling timeout. Default value: 5 minutes.

NodeSettings

FieldTypeDescription
commonCommonLanguageSettingsSome settings.

PhpSettings

FieldTypeDescription
commonCommonLanguageSettingsSome settings.

Publishing

FieldTypeDescription
method_settingsrepeated ``MethodSettingsA list of API method settings, e.g. the behavior for methods that use the long-running operation pattern.
new_issue_uristringLink to a public URI where users can report issues. Example: https://issuetracker.google.com/issues/new?component=190865&template=1161103
documentation_uristringLink to product home page. Example: https://cloud.google.com/asset-inventory/docs/overview
api_short_namestringUsed as a tracking tag when collecting data about the APIs developer relations artifacts like docs, packages delivered to package managers, etc. Example: “speech”.
github_labelstringGitHub label to apply to issues and pull requests opened for this API.
codeowner_github_teamsrepeated ``stringGitHub teams to be added to CODEOWNERS in the directory in GitHub containing source code for the client libraries for this API.
doc_tag_prefixstringA prefix used in sample code when demarking regions to be included in documentation.
organizationClientLibraryOrganizationFor whom the client library is being published.
library_settingsrepeated ``ClientLibrarySettingsClient library settings. If the same version string appears multiple times in this list, then the last one wins. Settings from earlier settings with the same version string are discarded.
proto_reference_documentation_uristringOptional link to proto reference documentation. Example: https://cloud.google.com/pubsub/lite/docs/reference/rpc
rest_reference_documentation_uristringOptional link to REST reference documentation. Example: https://cloud.google.com/pubsub/lite/docs/reference/rest

PythonSettings

FieldTypeDescription
commonCommonLanguageSettingsSome settings.
experimental_featuresPythonSettings.ExperimentalFeaturesExperimental features to be included during client library generation.

ExperimentalFeatures

FieldTypeDescription
rest_async_io_enabledboolEnables generation of asynchronous REST clients if rest transport is enabled. By default, asynchronous REST clients will not be generated. This feature will be enabled by default 1 month after launching the feature in preview packages.
protobuf_pythonic_types_enabledboolEnables generation of protobuf code using new types that are more Pythonic which are included in protobuf>=5.29.x. This feature will be enabled by default 1 month after launching the feature in preview packages.
unversioned_package_disabledboolDisables generation of an unversioned Python package for this client library. This means that the module names will need to be versioned in import statements. For example import google.cloud.library_v2 instead of import google.cloud.library.

RubySettings

FieldTypeDescription
commonCommonLanguageSettingsSome settings.

SelectiveGapicGeneration

FieldTypeDescription
methodsrepeated ``stringAn allowlist of the fully qualified names of RPCs that should be included on public client surfaces.
generate_omitted_as_internalboolSetting this to true indicates to the client generators that methods that would be excluded from the generation should instead be generated in a way that indicates these methods should not be consumed by end users. How this is expressed is up to individual language implementations to decide. Some examples may be: added annotations, obfuscated identifiers, or other language idiomatic patterns.

Enums

ClientLibraryDestination

To where should client libraries be published?
ValueNumberDescription
CLIENT_LIBRARY_DESTINATION_UNSPECIFIED0Client libraries will neither be generated nor published to package managers.
GITHUB10Generate the client library in a repo under github.com/googleapis, but don’t publish it to package managers.
PACKAGE_MANAGER20Publish the library to package managers like nuget.org and npmjs.com.

ClientLibraryOrganization

The organization for which the client libraries are being published. Affects the url where generated docs are published, etc.
ValueNumberDescription
CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED0Not useful.
CLOUD1Google Cloud Platform Org.
ADS2Ads (Advertising) Org.
PHOTOS3Photos Org.
STREET_VIEW4Street View Org.
SHOPPING5Shopping Org.
GEO6Geo Org.
GENERATIVE_AI7Generative AI - https://developers.generativeai.google